Центрифуга - не может получить всю прошлую историю - PullRequest
0 голосов
/ 02 марта 2020

Я не могу решить одну проблему в центрифуге (сервер веб-сокетов). Я пишу чат, используя этот сервер.

У меня есть один канал, где вся история чата. Все сообщения попадают туда. Бэкэнд (Yii2) имеет очередь, которая циклически просматривает историю каналов, сохраняет все в MongoDB и отправляет сообщения на правильные каналы. Это выглядит примерно так:

$history = $this->client->history($this->historyChannel);
           $this->client->historyRemove($this->historyChannel);

SAVING MESSAGES SCRIPT
............................................................

Но проблема в том, что иногда сообщение не сохраняется. Я понял, что это приходит к $this-> historyChannel в то время, когда я уже сохранил историю в переменную, но еще не удалил ее.

Как мне придумать механизм, который будет сохранять сообщения на 100% , Или не удалять все сообщения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...