ioangrozniy
@ioangrozniy

Почему приходят не все сообщения nginx+push-stream?

Может кто поможет разобраться.
Пытаюсь создать чат.
Суть в том, что на centos установлен nginx+push-stream.
Всё вроде работает, единственное НО, если сообщения были отправлены в одно время то приходит только одно, то которое на мгновение отправлено быстрее.
Может кто знает как с этим бороться?
ЗЫ: Настроено по этой статье
  • Вопрос задан
  • 442 просмотра
Пригласить эксперта
Ответы на вопрос 1
ioangrozniy
@ioangrozniy Автор вопроса
Как я понимаю работу long-polling, это удержание подключения пока там не появляется какое то сообщение или время заканчивается. Если появляется соединение, то он забирает его и переподключается и ждёт снова. Так?
Если так то может дело в том, что пока он переподключается второго сообщения уже нет? Или я что то не так понимаю? Или как то можно получать старые сообщения и те которые я уже получил?
Неужели ни кто с таким не сталкивался и не знает как победить?
Может дело в настройках:
http {
…
    server {
    …
    location /publish {
             push_stream_publisher               admin; 
             push_stream_channels_path    $arg_id; 
             push_stream_store_messages         on;  
             allow          127.0.0.1;   
          }

          location ~ /subscribe/(.*) {
             push_stream_subscriber         long-polling ;
             push_stream_channels_path                 $1;  
             push_stream_longpolling_connection_ttl    30s;  
            push_stream_last_received_message_time  $arg_time; 
            push_stream_last_received_message_tag     $arg_tag;  
          }
   }
push_stream_shared_memory_size          32M;
}


Или в скрипте приёма? (Скрипт как в статье по ссылке)
Я пробовал и time не менять, посылая всё время null, только на выхлопе одно и то же.

Может тогда кто подскажет как с ноля использовать вебсокеты? Какие приложения устанавливать? Что настраивать? Может какие то статьи есть "для чайников"?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы