2014-09-17 4 views
8

WebSocket을 사용하여 Apache Kafka에서 브라우저로 메시지를 스트리밍하는 앱을 작성 중입니다. 서버가 잠시 동안 메시지를 소비하지 않고 오프셋이 뒤쳐지면 websocket은 1000 또는 2000 메시지 뒤에 닫힙니다. 이 숫자는 모든 테스트를 두 번씩 번갈아 수행하는 것으로 보입니다. 메시지는 utf8이며 일반적으로 8 바이트 조각에서 길이가 약 130-140 바이트입니다.WebSocket이 1000 개의 메시지를 닫습니다.

오프셋이 발생하고 메시지가 약간 느린 속도로 들어 오면 메시지는 더 오래 지속되지만 잠시 동안 열어 둔 후에도 때때로 임의로 닫힙니다.

서버 측에서는 Twisted와 함께이 kafka-python 라이브러리 및 브라우저 측의 네이티브 WebSocket 객체를 사용하고 있습니다. 모든 경우에 양끝 모두 1006 오류 코드 (예기치 않은 종료)를 수신합니다.

저는 현재 RHEL 및 OSX의 Firefox 31에서만이를 테스트했습니다. 서버의 파이썬 버전은 2.6.6입니다. 업그레이드는 다소 어려울 것이므로 불행히도 새로운 파이썬 버전으로 해결할 수 있을지 모르겠다. 그러나 이것이 분명히 문제라면 그것은 할 수 있습니다.

코드는 매우 간단합니다. 연결이 열리면 서버는 Kafka 메시지를 소비하고 websocket에서 메시지를 보냅니다. 클라이언트는 jquery를 사용하여 간단한 span 요소에 추가 한 후 본문 앞에 추가합니다.

+2

몇 가지 코드 샘플이 있습니까? –

답변

관련 문제