Какова скорость передачи данных в RabbitMQ (локально)?
Здравствуйте. Решил изучить новую технологию для построениях масштабируемых приложений. Выбор пал на MQ технологию и её реализацию RabbitMQ. Начала с теста скорости. 2 приложения: Отправщик и Получатель. Отправщик в бесконечном цикле формирует сообщения определённого размера и отправляет их в очередь. Получатель постоянно мониторя очередь принимает сообщения и инкрементирует счётчик количества принятых сообщений, каждую секунду выводя количество принятых за эту секунду сообщений.
И что оказалось. Если передавать по сообщения размером 1 мегабайт успевает отправиться и получиться 400-450. Пробовал делать отправку и приём в несколько очередей, тогда скорость делится по-ровну, например если на 2 очереди, то по 200 сообщений на очередь, если на 4 то по 100. Отсюда делаю вывод что пропускная способность RabbitMQ Servera всего 400-450 мегабайт в секунду?
Честно говоря не верится. Возможно есть какие-то настройки сервера? Народ кто работал с данной технологией откликнитесь. Интересует ваш опыт. Заранее спасибо!
Аппаратная часть вопроса. Intel Core i7. RAM 8Gb. Windows 7 Ultimate. Писал на C# используя C# API для RabbitMQ. Оба приложения: отправщик и приёмник на одной машине, обращение к серверу через localhost.
Код приложений могу совместить в одно и выложить кому интересно сами потестить, правда придётся установить сам сервер.
C помощью скриптов PYTHON передавал в очередь на сервер Rabbit MQ и принимал как на том же компьютере, так и на другом (оба были в это время в одной локальной сети предприятия, как и сервер) файлы разного размера.
Максимальный был - около 700 Мб. Он был отправлен и получен за 30 сек.
Все предыдущие - меньшего размера соответственно "улетали" быстрее.
Больше 700 Мб пробовал только 2,8 Гб, но получил ошибку из-за нехватки памяти.
Задача стояла - не особо часто передавать файлы размером до 10 Мб, так что результаты очень даже порадовали.