Утечки памяти в обработчиках сообщений AMQP, как вы с ними справляетесь?
- Ограничивать время работы консюмера. После n часов/минут должен завершиться процесс после очередной итерации, после чего запущен новый процесс.
- Завершать процесс при выделении памяти более допустимого объема. PHP считает выделенную память достаточно не точно, но попробовать можно memory_get_usage(), memory_get_peak_usage. -l флаг.
- Завершать процесс после обработки n сообщений. -m флаг в упомянутой библиотеке php-amqplib/rabbitmq-bundle
Про сами утечки: надо дебажить и не допускать утечек :)
Верно, "рожден умирать". Рекомендовал бы не запускать скрипты на "вечно". Рано или поздно они повиснут (дело не в памяти, а в том что процесс фактически будет висеть, но ничего не делать).
Должен быть механизм убивающий слишком долго запущенные процессы. Отталкиваться можно от установленного времени работы скрипту.