Перейти к содержанию

RabbitMQ

Информация

RabbitMQ - это решение для обмена данных между различными компонентами приложений или микросервисов. Является одним из самых популярных брокеров сообщений, который поддерживает асинхронную коммуникацию между различными системами и языками программирования. RabbitMQ основан на протоколе AMQP (Advanced Message Queuing Protocol), обеспечивающем стандартизацию и надежность в обмене сообщениями. Этот сервис выступает в роли посредника между отправителями и получателями сообщений, позволяя им взаимодействовать независимо друг от друга.

RabbitMQ. Основные возможности

  • Очереди сообщений: возможность отправлять сообщения в очередь и получать их из нее асинхронно. Обеспечивает гибкость и отказоустойчивость при обмене сообщениями между различными компонентами системы.
  • Распределенность: RabbitMQ поддерживает распределенную архитектуру, что означает возможность разворачивания брокера сообщений на нескольких узлах. Позволяет балансировать нагрузку и обеспечивать отказоустойчивость.
  • Гарантия доставки: отправленное сообщение сохраняется в очереди до тех пор, пока не будет успешно доставлено получателю или не истечет время ожидания. - Обеспечивает надежность коммуникации между компонентами системы.
  • Модель подписки-издательство: RabbitMQ поддерживает модель pub/sub (подписка-издательство), где издатель отправляет сообщения на определенную тему, а подписчики могут получать сообщения по этой теме.
  • Гибкость маршрутизации: RabbitMQ предоставляет различные возможности для маршрутизации сообщений. Включает в себя прямую маршрутизацию, топик-маршрутизацию и многое другое.
  • Расширяемость: существует большое количество плагинов, добавляющих дополнительные функциональные возможности, такие как шифрование сообщений, аутентификация, мониторинг и т.д.
  • Инструменты управления и мониторинга: веб-интерфейс администратора, командная строка, API для автоматизации и мониторинга работы RabbitMQ.

Особенности сборки

  • Возможна установка на семейство RHEL версии 8 и выше
  • Установленное ПО:

    • Erlang >= 25.0
    • RabbitMQ >= 3.10.5
  • ПО установлено вне контейнера. По умолчанию база данных доступна только с localhost. Для кастомизации установки необходимо внести изменения в файл /etc/rabbitmq/rabbitmq-env.conf, и перезапустить сервис rabbitmq-server.

Web-интерфейс будет доступен по URL: https:rabbitmq{Server_ID_from_Invapi}.hostkey.in:15672.

Начало работы после развертывания RabbitMQ

После оплаты заказа на указанную при регистрации электронную почту придет уведомление о готовности сервера к работе. В нем будет указан IP-адрес VPS, а также логин и пароль для подключения. Управление оборудованием клиенты нашей компании осуществляют в панели управления серверами и APIInvapi.

Данные для авторизации, которые можно найти или во вкладке Info >> Tags панели управления сервером или в присланном e-mail:

  • Ссылка для доступа к панели управления RabbitMQ с веб-интерфейсом: в теге webpanel;
  • Логин: admin;
  • Пароль: приходит в письме на вашу электронную почту при сдаче сервера.

Примечание

Подробная информация по основным настройкам RabbitMQ содержится в документации разработчиков.

Заказ RabbitMQ с помощью API

curl -s "https://invapi.hostkey.ru/eq.php" -X POST \
--data "action=order_instance" \
--data "token=" \
--data "deploy_period=" \
--data "deploy_notify=" \
--data "email=" \
--data "pin=" \
--data "id=" \
--data "os_id=" \
--data "root_pass=" \
--data "hostname=" \
--data "ssh_key=" \
--data "post_install_callback=" \
--data "post_install_script=" \
--data "reinstall_key=" \
--data "os_name=" \
--data "imitate_deploy=" \
--data "imitate_error=0" \
--data "own_os=" \
--data "jenkins_task=" \
--data "traffic_plan=" \
--data "invoice_relid=" \
--data "preset=" \
--data "location_name=" \