2013-03-08 2 views
3

많은 양의 데이터를 처리하고 진행 상황에 대한 클라이언트에게 업데이트를 보내는 시스템을 설계하려고합니다. nginx (고맙게도 WebSocket을 지원하기 시작한)와 웹 서버용 uwsgi를 사용하고 싶습니다. 그리고 zeromq를 사용하여 시스템을 통해 메시지를 전달하고 있습니다. 이상적으로 솔루션은 Python으로 작성 될 수 있지만 Nodej 또는 Go 솔루션에도 열려 있습니다.zeromq에 의해 트리거되는 nginx 뒤의 웹 소켓은 무엇입니까?

  1. 클라이언트가 웹 사이트를 방문하고 많은 양의 데이터를 처리 할 것을 요청합니다 여기

    내가 달성하고자하는 흐름입니다.
  2. 서버는 zeromq을 통해 다른 프로세스/서버 [작업자]로 처리를 진행하고 서버와 함께 websocket을 설정하는 방법에 대한 정보를 포함하여 처리가 시작되었음을 설명하는 클라이언트 요청에 응답합니다.
  3. 클라이언트가 websocket 연결을 설정하고 업데이트를 기다립니다.
  4. 처리가 완료되면 작업자는 "처리 완료!"메시지를 보냅니다. 메시지를 zeromq을 통해 websocket 프로세스에 보내고 websocket 프로세스는 메시지를 클라이언트로 푸시 다운합니다.

가능한 설명이 있습니까? 나는 황제 모드에서 uwsgi를 실행하여 웹 서버에 대한 하나의 프로세스 (포트)와 websocket 프로세스에 대한 또 다른 프로세스를 처리 할 수 ​​있다고 생각했습니다. 나는 둘 다 zeromq 메시지를 받고 동일한 프로세스에서 websocket 연결을 관리하는 방법을 찾을 수 있는지 잘 모르겠습니다. 일터에서 최종 웹 푸시를 시작해야할까요?

도움말/올바른 방향 찾기/잠재적 솔루션은 많이 감사하겠습니다. 모든 샘플 또는 nginx 설정 파일의 스 니펫을 적절히 라우팅 된 웹 소켓으로 평가할 수 있습니다.

감사합니다.

답변

2

물론 가능합니다. zerogw을보고 싶을 수도 있습니다.

+0

감사합니다. 그건 잘된거야! – Ethan

관련 문제