2010-01-02 5 views

답변

3

아니요, 질소 이벤트는 현재 질소에 대한 웹 요청을 처리하는 모든 프로세스에서 실행됩니다.

Nitrogen은 매우 비동기식 프레임 워크이기 때문에 동일한 브라우저 창이나 프레임에 대해 비동기 적으로 여러 이벤트를 처리하는 프로세스가 여러 개있을 수 있습니다. 즉, 서로 다른 이벤트가 별도의 프로세스에서 처리되도록 할 수 있습니다.

+0

그래서, 버튼이 두 번 같은 이벤트를 제공 할 수로드 밸런싱의 일종을 보장하고, 이벤트가 다른 프로세스에서 실행될. 그렇다면 대답은 아니오입니다. 명확하게하기 위해 처음에 "아니오"를 추가하고 있습니다.이 주석이 당신을 잘못 해석 한 것으로 밝혀지면 자유롭게 삭제하십시오. – Pablo

+0

질소가 동일한 과정에서 일어날 수있는 사건을 확실히 방지한다는 의미에서 대답은 "아니오"입니다. 그러나 이러한 기능을 제공하는 (그리고 질소와 호환되는) http 서버를 발견하면이를 달성 할 수 있습니다. – Zed

1

이봐, 얘들 아, 내가 질소라고 불리는 질소에 대한 프로세스 레지스트리를 발견했다 : nprocreg.
앱 폴더 ( $ NITROGEN_INSTALL_DIR/apps/nprocreg)를 확인할 때.

이 응용 프로그램에서는 프로세스가 여러 대의 컴퓨터에서 여러 개의 질소 프로그램 서버에 걸쳐 생성 될 수 있습니다. 이것을 실험하기 위해서는 두 개의 서로 다른 호스트에서 두 개의 노드를 시작하십시오. ping하여 연결되도록합니다. (net_adm:ping(?OTHER_NODE)). 이제, 두 노드 모두에서 질소를 시작하십시오. 실제로 처음 질소를 시작한 다음 두 노드에 ping 할 수 있습니다.
두 개의 질소 노드가 LAN에서 [NAME] @IP_ADDRESS와 같이 긴 이름을 사용하고 있는지 확인하십시오.

이제 LAN의 세 번째 컴퓨터에서 DNS (이름 서버)를 만듭니다. 질소 응용 프로그램을 실행하는 두 노드의 두 개의 다른 IP 주소에 같은 이름 매핑을 지정합니다. DNS 서비스의 DNS IP 주소 (실제로 LAN의 모든 컴퓨터에 대해이 작업을 수행함)를 가리키는 지 확인하기 위해 두 컴퓨터를 질소 유입 경로로 구성하십시오.
LAN에있는 여러 대의 컴퓨터에서 페이지 (질소 프로그램의 문서 루트에 있음)를 요청하면 브라우저에서 매핑 된 이름을 사용하면 DNS 서버가 일종의로드 균형 조정을 수행한다는 것을 알 수 있습니다.
이제 요청중인 페이지가 인터페이스에서 나오는 질소 서버를 보여줄 수 있는지 확인하십시오. 이 페이지에는 이벤트를 생성하는 버튼이 있어야합니다. wf:flash(wf:f("Some statement on the interface",[]))
이제 두 개의 다른 컴퓨터에서이 페이지를 요청하고 각 페이지가 제공되는 위치를 기록하십시오. 다음으로, 하나의 질소원으로 가서 멈추십시오.
브라우저에 페이지가있는 버튼을 클릭하면 방금 내려 놓은 질소 서버가 작동하지만 여전히 작동합니다.
Rusty와 친구들은 질소 프로세스가 더 많은 질소 애플리케이 션에 등록 될 수 있다면로드 밸런서 뒤에 실행될 때 클러스터의 모든 질소 앱에 이벤트를 보낼 수 있다는 것을 알게되었습니다.
물론 다른 컴퓨터의 두 앱이 같은 페이지, 모듈 및 경로 구성을 갖고있는 경우이 방법이 효과적입니다. 이는 이벤트 콜백 함수가 데이터베이스 API를 호출 할 수 있기 때문입니다.DNS 서버를 사용하여로드 밸런싱의
예는 당신이 파 '때처럼 리눅스 나 솔라리스에 터미널에서 구글 볼 수 있습니다 : 당신은 이름 서버에서 IP adresses 몇 가지에 매핑 같은 이름을 가진 것을 볼 수

 
dig www.google.com 
. 이 도메인에서 가용성을 보장하고
/ [email protected]

관련 문제