@daren93
Full-stack developer

Что делать если в Laravel переполнилась очередь событий?

Есть веб приложение с трекингом клиентов.
Диспетчеру необходимо более-мение в реальном времени наблюдать за перемешением клиентов по карте.
Все перемешения попадают в очередь событий ларавела, которая при большом количестве клиентов переполняется и не успевает обрабатывать события.
Есть решение переосмыслить архитектуру приложения, но хотелось бы узнать, может есть какое-то решение для таких ситуаций?
  • Вопрос задан
  • 233 просмотра
Решения вопроса 1
@daren93 Автор вопроса
Full-stack developer
JhaoDa
число воркеров надо увеличить

Стало временным решением. Надеюсь это то что нужно и переписывать архитектуру не придется.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
kawabanga
@kawabanga
Я подобную задачу решал черед redis по середине.
1) без очередей.
2) самая последняя позиция клиента хранится в редисе.
3) позиции клиентов копятся в редисе и отправляются в mysql по крону раз в 10 минут.

Но у меня задача только на складирование координат и отображение последней точки. Под вашу задачу немного поменять тип хранения, и выбирать одновременно из редиса и бд по запросу.
Ответ написан
Комментировать
Sanasol
@Sanasol Куратор тега Laravel
нельзя просто так взять и загуглить ошибку
Ну так ведь очередь и нужна для того чтобы создавать....очередь из заданий на выполнение чтобы они точно выполнялись.

Когда я создаю новое событие, оно даже не попадает в листинг, то-есть,


в какой листинг? У вас там скриншот и логов выполнения очереди, туда ничего не попадает пока задание хотя бы не начало обрабатываться, а до этого момента оно молча висит в очереди.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы