-
Notifications
You must be signed in to change notification settings - Fork 7
# RabbitMQ
Sidikov Marsel edited this page Jul 16, 2018
·
1 revision
-
Обеспечение промежуточного уровня, ориентированное на обработку сообщений (MOM, Message-oriented middleware) определяется как инфраструктура программного обеспечения или аппаратных средств, которая делает возможными отправку и приём сообщений в распределённых системах.
-
AMQP - протокол передачи сообщений между компонентами системы.
-
RabbitMQ - реализация AMQP.
-
Exchange - компонент брокера обмена сообщениями, осуществляющий непосредственную маршрутизацию сообщений в очереди.
-
Queue - тип данных, осуществляющий хранение сообщений.
-
Binding - правило, согласно которому сообщения попадают в определенную очередь.
- Влючить GUI-плагин
rabbitmq-plugins enable rabbitmq_management
Задача 1:
- Создать exchange
- Создать очередь
- настроить Binding
Суть: Реализовать модули регистрации пользователя с последующим оповещением.
Задача: Пользовать вводит свои данные - имя, логин, email, телефон.
Главный сервис принимает эти данные, далее, он кидает в очередь две задачи:
1) Отправить оповещение по смс о регистрации.
2) Отправить оповещение на почту о регистрации.
Как делать:
1) SpringRabbitMqMain - запускаете для создания exchange.
2) SpringRabbitMqProducer - в вашем случае, это приложение с одним контроллером, которое принимает данные в формате JSON и отправляет две задачи в exchange ( в одну очередь и в другую).
3) SpringRabbitMqReceiver - в вашем случае будет два приложение - одно отправляет смс, другое отправляет оповещение на почту.
https://smsaero.ru/
Отправка на почту:
https://github.com/MarselSidikov/JAVA_ENTERPRISE/tree/master/SpringBootExample