2014-09-17 21 views
8

Piszę aplikację do przesyłania wiadomości do przeglądarki z Apache Kafka za pomocą WebSocket. Gdy serwer nie zużywa komunikatów przez pewien czas, a przesunięcie się kończy, websocket zamyka się po 1000 lub 2000 wiadomościach. Liczba wydaje się na przemian z dwóch każdego testu. Wiadomości są utf8 i zwykle mają około 130-140 bajtów długości w 8 bajtowych fragmentach.WebSocket zamyka się po 1000 wiadomościach

Po złapaniu przesunięcia i pojawieniu się komunikatów z nieco mniejszą szybkością, trwa to znacznie dłużej, ale czasami może się zamknąć losowo po dłuższym otwarciu.

Po stronie serwera korzystam z Autobahn z Twisted, z tej biblioteki kafka-python i tylko z natywnego obiektu WebSocket po stronie przeglądarki. Oba końce otrzymują kod błędu 1006 (nieoczekiwane zamknięcie) w każdym przypadku.

Obecnie testowałem to tylko z Firefoksem 31 na RHEL i OSX. Wersja python serwera to 2.6.6. Aktualizacja będzie raczej trudna, więc niestety nie mogę po prostu zobaczyć, czy nowa wersja pythona ją naprawia; jednak jeśli jest to zdecydowanie problem, można to zrobić.

Kod jest bardzo prosty w tej chwili - po nawiązaniu połączenia serwer zaczyna pobierać wiadomości Kafki i wysyłać je na websocket. Klient dodaje je do treści po dodaniu do prostego elementu span z jquery.

+2

Czy masz do tego próbkę kodu? –

Odpowiedz

Powiązane problemy