Установка RubbitMQ

Материал из Wiki МИАЦ ВО
Версия от 10:37, 13 июля 2017; Misha (обсуждение | вклад) (Сброс всех очередей в rabbitmq)
Перейти к навигации Перейти к поиску

Полезные ссылки

  1. RabbitMQ - Урок 1. Hello world!
  2. RabbitMQ - Урок 2. Распределенные очереди
  3. RabbitMQ - Урок 3. Рассылка публикаций
  4. RabbitMQ - Урок 4. Селективная рассылка
  5. RabbitMQ - Урок 5. Рассылка по шаблону
  6. RabbitMQ - Урок 6. Реализация RPC шаблона
  7. RabbitMQ для начинающих

Установка сервера

$sudo apt install rabbitmq-server

Установка web интерфейса

$sudo rabbitmq-plugins enable rabbitmq_management
$sudo service rabbitmq-server restart

И подключаемся через браузер с URL http://<ip-host>:15672
login: guest password: guest

Сброс всех очередей в rabbitmq

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app

Команды управления пользователями

Назначение нового пользователя

rabbitmqctl(1) manual page
По умолчанию RabbitMQ используется пользователь guest и пароль guest

Поменять пароль пользователя

Например, можно просто поменять пароль пользователю guest

abbitmqctl change_password guest newpassword

Удаление пользователя

Удаляем пользователя guest

rabbitmqctl delete_user guest

Добавление нового пользователя

Для добавление нового пользователя, например rabbit и пароль password

rabbitmqctl add_user rabbit password

Сбросить пароль пользователя

Сбросим пароль пользователю guest

rabbitmqctl clear_password guest

Команда аутентификации

rabbitmqctl authenticate_user user paswduser

Эта команда инструктирует брокера RabbitMQ аутентифицировать пользователя с именем user с помощью проверки пароля.

Просмотреть всех пользователей

rabbitmqctl list_users

Установка PHP библиотели AMQP

$sudo apt install librabbitmq-dev
$sudo pecl install AMQP

Если будет ругаться, что библиотека librabbitmq старая, то

$sudo apt purge librabbitmq-dev
$sudo apt install cmake

Идем на https://github.com/alanxz/rabbitmq-c и качаем последнюю версию библиотеки. распаковываем в ~

cd rabbitmq-c-master
mkdir build && cd build
cmake ..
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
sudo cmake --build . --target install
sudo pecl install AMQP

В папке /etc/php/7.0/mods-available создаем файл amqp.ini следующего содержания

; extention for rabbitmq lib
; priority = 20
extension=amqp.so

И делаем симлинки

sudo ln -s /etc/php/7.0/mods-available/amqp.ini /etc/php/7.0/apache2/conf.d/20-amqp.ini
sudo ln -s /etc/php/7.0/mods-available/amqp.ini /etc/php/7.0/cli/conf.d/20-amqp.ini

Перезапускаем apache

sudo service apache2 restart