Ну это как я думаю, просто если взять строку состоящею из смайликов, то оно выдает длину в 2 раза больше
Читать полностью…Да лимитер норм тема, юзаем именно его для таких кейсов (регулирование кол-во запросов к сторонним сервисам).
Там правда прикол есть, что в есть простой флоу использования
$limiter->reserve(1)->wait();
do {
$limit = $limiter->consume(1);
$limit->wait();
} while (!$limit->isAccepted());
то есть, предлагаете все процессорное время тратить на фетч задачи, его фейл и ретрай?
Читать полностью…вот и получается что тебе тебе нужно лимитировать только один messageHandler а своим слипом ты заблокируешь все..,
пиши дату последнего запуска в условный редис, следующей джобой проверяй, если таймаут не прошел фейли джобу пусть уходит в ретрай, еще лучше поставь редис ключу время жизни в твой таймаут и просто проверяй есть запись или нет...
Если не ошибаюсь, в дев режиме логируется все в память. И не сбрасывается после флаша
Читать полностью…должны быть разные очереди для таких вещей. или писать на другом языке с параллелизмом. имеем что имеем.
Читать полностью…Я ж внятно объяснил. Кролик дергает сервис, который отправляет http запрос к внешнему приложению. Если я буду частить мессагами, этот внешний сервис будет мной ддоситься, это будет неприятно и мне и внешнему сервису. Поэтому нужна какая то пауза чтобы охладить траханье
Читать полностью…Так как к стороннему ресурсу у нас лимит 1 запрос в 5 секунд, логично этот лимит использовать по максимуму
Читать полностью…а может быть и так, что сообщение получили через 4-5 секунд, таймаут не прошел, зафейлили, взяли другие задачи и начали выполнять, а они допустим выполняются долго (2-3 секунд), а наша основная задача получается выполнилась через 7-8 секунд. Неэффективно
Читать полностью…лучше для определенного хэндлера сделать отдельную очередь, и только его и заставлять ждать при превышении лимита
Читать полностью…как ни странно, не помогло. но помогло --env=prod то есть да, где-то очень рядом собака рылась
Читать полностью…логирование есть, пользуюсь симфонишной командой с её io выводом для отслеживания прогресса. Если закомментить em->persist то память перестаёт убегать
Читать полностью…