내가 노드 JS에 작성된 소켓 서버 응용 프로그램, 아마존 EBS (탄성 콩 줄기)에서 호스팅을 소켓에 연결하고 지정된 ID, 예를 들어 event_id를 전달합니다. 내 응용 프로그램은 "event_ event_id
"이름의 회의실을 만들고 회의실에 참여합니다. 다른 클라이언트는 다른 "EVENT_ID"가소켓 IO, 애플리케이션 서버의 모든 인스턴스에 연결해야하는 부하 분산</p> <p>클라이언트에 의해 관리되는
람다 기능은 EVENT_ID
필요한 데이터와 응용 프로그램에 "event_push"라는 이벤트를 소켓에 연결하고 방출 할 때마다 하나의 인스턴스 내 소켓 응용 프로그램 (의 EBS가) event_id
와 푸시 이벤트를 감지, 그것은로드 밸런서에 의해 결정
클라이언트가 서버 중 하나를 연결할 수 있습니다 따라서 모든 멤버가 이벤트의 통지됩니다 방 "event_ event_id
"의 모든 구성원에 밀려 데이터를 방송 끈적한 세션이 연결을 유지할 수 있습니다.
이제 내 문제 : 서버의 모든 인스턴스에에 이벤트를 방출 할 수있는 방법이 있나요 : 는 "event_ event_id
"
QN라는 이름의 방을 가진 경우에만 서버에 "event_push"를 방출하는 방법이 있나요 EBS? 또는 Qn : 다른 해결책이 있습니까?
가능한 해결책 : 일정 세부 정보를 수신 할 수있는 영구 연결을 가질 수있는 중앙 구독/게시 서버. 소켓 서버는 중앙 서버에 가입 할 수 있으므로 이벤트가 발생하면 영구 연결을 통해 모든 가입 된 소켓 서버로 푸시됩니다. – Ima