Размер сообщения?

664 views
Skip to first unread message

Alexey Spiridonov

unread,
Sep 20, 2010, 5:28:14 AM9/20/10
to rabbit...@googlegroups.com
Собственно глупый такой вопрос,  но какой максимальный размер сообщения поддерживает rabbitMQ?   

В доках не нашлось ничего, на практике валится где то на  0.5 МБ, но похоже не из за размера, а из за нагрузки. 

Может у кого есть более точные данные?

Alexandre Kalendarev

unread,
Sep 20, 2010, 7:29:53 AM9/20/10
to rabbit...@googlegroups.com

20 сентября 2010 г. 13:28 пользователь Alexey Spiridonov <fors...@gmail.com> написал:

Собственно глупый такой вопрос,  но какой максимальный размер сообщения поддерживает rabbitMQ?   

В доках не нашлось ничего, на практике валится где то на  0.5 МБ, но похоже не из за размера, а из за нагрузки. 

я работал с маленькими сообщениями,
но для PHP экстеншена сделал чтоб была возможность манипулировать с сообщеними больше 131К - это размер одного фрейма по умолчению.
200-400K передавались без проблем

как вариант - увеличить размер фрейма в клиентской либе
возможно валится клиент из-за нехватки памяти - проверял?

 
сегодня вечером проверю: попытаюсь  загрузить сообщение 1М

Alexey Spiridonov

unread,
Sep 20, 2010, 10:26:35 PM9/20/10
to rabbit...@googlegroups.com
получилось  32 мега записать.    на 64 падает, но 99% это превышение memory_limit в php 

причем пока сообщений/сек мало, пишет нормально,    но с какого то RPS  rabbit  внезапно  лочит connection  и зависает

Alexandre Kalendarev

unread,
Sep 21, 2010, 1:46:40 AM9/21/10
to rabbit...@googlegroups.com


21 сентября 2010 г. 6:26 пользователь Alexey Spiridonov <fors...@gmail.com> написал:
получилось  32 мега записать.
это одно сообщение или серия по NN Кb?

   на 64 падает, но 99% это превышение memory_limit в php 

не могу представить - зачем нужны такие большие сообщения? 

В рабите есть потоковый режим передачи файлов, но я его не реализовывал. Может посмотреть в эту сторону?
как вариант - сохраняем сообщение в темповый файл, а его имя гоняем через раббит.

на чем падает - всегда можно проверить! начни с dbg php - вывалится либо пхп либо клиент.
 
причем пока сообщений/сек мало, пишет нормально,  

а можно засеч эту цифру - вот это самый важный момент любого тестирования!!! найти ПРЕДЕЛ ПАДЕНИЯ!
 
 но с какого то RPS  rabbit  внезапно  лочит connection  и зависает


Александр

Alexey Spiridonov

unread,
Sep 21, 2010, 9:22:58 PM9/21/10
to rabbit...@googlegroups.com
32 мега на одно сообщение.

Зачем это надо непонятно,  просто хочется знать предел.   В принципе 32 метра - это более чем достаточно. 

А границу нашли,   кролик начинает умирать, когда на сервере заканчивается свободная оперативка.   Поэтому в идеале на HighLoad скорость поступления сообщений должна быть не больше скорость их записи на диск, тогда стабильно работает.    В тесте получалось загонять по 10000 х 2kb   сообщений  за одни цикл,  и циклы шли пока не накопилось 2 миллиона сообщений в каждой их 4х  очередей.


Alexandre Kalendarev

unread,
Sep 22, 2010, 1:34:07 AM9/22/10
to rabbit...@googlegroups.com
спасибо,
это будет ценная информация для всех

22 сентября 2010 г. 5:22 пользователь Alexey Spiridonov <fors...@gmail.com> написал:
Reply all
Reply to author
Forward
0 new messages