2012-12-13 4 views

답변

2

시스템에 배포 된 응용 프로그램의 버그를 두려워 할 것입니다. otp의 좋은 예는 3 년 전에 완전히 다시 작성된 SSL 앱입니다. 그 다음은 http 클라이언트 - 메모리 누수입니다. Xmerl은 결코 시스템의 강력한 부분이 아니 었습니다.

또한 새로운 웹 서버 (Inets보다는 성능이 좋지만 모든 성능이 안정적인 Yaws를 필요로하지 않는다면), ejabberd - OS에 직접 적용되는 기술 수, Riak - 파일 시스템, ulimit, iostats 등등.

5

클러스터를 실행한다는 것은 쿠키를 공유한다는 것을 의미하며 쿠키를 알고 있으면 (네트워크에 연결되어 있다고 가정하고) 임의의 노드에 연결할 수 있고 쿠키를 임의의 Erlang 명령 또는 프로그램.

내 생각에 클러스터 된 것은 쿠키가 무엇인지 (또는 어디에 있는지) 알 수있는 파일이 적어도 두 개 (그리고 일부 사람 수) 있다는 것을 의미합니다.

+1

내가 얼랑 호스트가 공용 액세스 내가 EPMD 의미 – user425720

+0

에 사용할 수 없습니다해야한다고 생각하고 net_kernel – user425720

+0

의 높은 포트 [참조] (http://www.erlang.org/doc/reference_manual/distributed.html#id87338)는 두 노드가 서로 다른 쿠키로 연결할 수 있다고 말합니다. 그러나 어쨌든 서로의 쿠키를 알아야합니다. –

2

우선 클러스터를 닫힌 VPN에두고 싶습니다 (멀리 떨어져 있고 WAN을 통해 의사 소통하는 경우). 그런 다음 강화 된 UNIX 또는 LINUX 위에 실행하고 싶습니다. 또 다른 강력한 아이디어는 쿠키를 가지고 있어도 클러스터에 대한 모든 epmd 연결을 닫는 것입니다. net_kernel:allow(Nodes).

Erlang Vms의 주요 단점 중 하나는 메모리 소비입니다. 나는 Erlang 플랫폼이 많은 사용자들에게 서비스를 제공하고 DOS 공격에 대해 보호하지 않는다면 그 취약점은 정말로 취약하다고 생각한다. script boys in the neighbourhood을 쉽게 차단할 수 있도록 웹 서버에 허용되는 동시 연결 수를 제한해야합니다. 또 다른 상황은 클러스터 전체에 Mnesia 데이터베이스를 분산/복제하는 것입니다. Mnesia는 데이터를 복제하지만 해당 데이터가 암호화되어 있는지 확실하지 않습니다. 마지막으로 클러스터에있는 모든 시스템의 유일한 관리자인지 확인하십시오.

관련 문제