최근에 서버에서 푸시를 수행 할 때 웹 소켓에 대한 훨씬 간단한 대안으로 서버 보낸 이벤트를 발견했습니다. 그들과 비교하는 대부분의 장소 (예 : here, here 및 here)는 클라이언트와 서버간에 전이중 통신이 필요하지 않으면 WebSockets가 과도하고 SSE가 충분하다고 말합니다.WebSockets 대신 양방향 클라이언트 - 서버 통신을 위해 Server-Sent 이벤트를 사용하는 단점
내 질문은 양방향 통신 (예 : 채팅)이 필요하고 클라이언트로부터 메시지를 보내기위한 정규 Ajax 요청과 메시지 스트림을 수신하기 위해 서버 스트림을 사용할 때 SSE 사용의 단점이 무엇입니까? SSE를 사용하기 위해 서버 측에서 구성을 거의하지 않아도된다는 점을 감안할 때 훨씬 매력적인 옵션 인 것으로 보입니다.
좋은 지적이지만 독립형 서버의 복잡성에 대해서는 동의하지 않습니다. SSE 프로토콜은 간단합니다. WebSockets (핸드 셰이크, 프레이밍, 마스킹, 바이너리)보다 훨씬 간단합니다. 두 경우 모두 HTTP 헤더와 같은 헤더를 구문 분석해야합니다. bash 스크립트로 SSE 서버를 구현할 수 있습니다 :) – Kornel
@porneL, 맞습니다. 기본 SSE 서버는 구현하기가 상당히 간단 할 수 있지만 (bash 버전을보고 싶습니다) 기본 WebSocket 서버도 있습니다. 그러나 관계없이, 내 요점은 WebSocket 서버가 더 간단하다는 것이 아니지만 SSE는 일반적으로 웹 서버를 사용하는 반면 WebSockets는 그렇지 않습니다 (기존 웹 인프라와 쉽게 통합되도록 설계되었지만). – kanaka