Temat: Nginx + http_push_module

Witam,

wykorzystuje ten moduł do Comet. Załóżmy sytuację że mamy kanał który jest nasłuchiwany przez trzech subcriberów.
Dane do kanału są wrzucane co 3s.
Ilość danych to 100KB w formacie json.

Problem jest następujący:

- pierwszych np 100 wywołań działa prawidłowo ale czas odpowiedzi zaczyna rosnąć
- w pewnym momencie dochodzi do sytuacji w której do kanału trafiają niepełne dane tzn np 50KB pomimo że powinno trafić 100.
- przypuszczam, że dane są nadpisywane przez nowe w trakcie wysyłki i dochodzi do problemów

W momencie kiedy mam przesyłane mniejsze ilości danych np 10KB wszystko jest ok.


location /comet/item{

push_channel_group pushmodule_item;
location /comet/item/pub {
set $push_channel_id item_$arg_id;
push_publisher;
# push_subscriber_concurrency first;
# push_message_timeout 4s;
# push_store_messages off;
# push_message_buffer_length 10;
# push_max_message_buffer_length 999999999;
# push_subscriber_concurrency broadcast;
# push_max_reserved_memory 32M;
# push_min_message_recipients 0;
# send_timeout 3;

}
location /comet/item/sub {
set $push_channel_id item_$arg_id;
push_subscriber long-poll;
push_subscriber_concurrency last;
send_timeout 3;
# push_stream_longpolling_connection_tt1 30s;
}
}



Zakomentowane linie to te które zmieniałem w trakcie testów.Łukasz Skowroński edytował(a) ten post dnia 01.12.11 o godzinie 23:50

konto usunięte

Temat: Nginx + http_push_module

Ten moduł push jest bardzo zbabolowany. Przy większej ilości requestów i ilości danych można zauważyć wyciek pamięci (vide error log nginx'a) i nginx wisi. Znalazłem co prawda gdzieś patch napisany przez osobę nie związaną z tworzeniem tego modułu, ale nadal wycieki się zdarzały. Przetestowałem go przy bardzo dużym ruchu i bardzo wielu subscriberach.
No i wadą tego modułu jest też to, że nie jest już rozwijany. Rzekłbym, że projekt zarzucono.

W zamian polecam http_push_stream_module.
https://github.com/wandenberg/nginx-push-stream-module

Trzeba tylko zmienić podejście do samego subscribe'owania, bo dane są przesyłane w strumieniu.Marcin Szczurek edytował(a) ten post dnia 31.01.12 o godzinie 16:38



Wyślij zaproszenie do