Изменения документа Apache Active MQ
Редактировал(а) Alexandr Fokin 2022/12/12 11:36
От версии 6.1
отредактировано Alexandr Fokin
на 2021/12/24 11:34
на 2021/12/24 11:34
Изменить комментарий:
К данной версии нет комментариев
К версии 10.1
отредактировано Alexandr Fokin
на 2021/12/26 15:55
на 2021/12/26 15:55
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -1,38 +1,38 @@ 1 +**Компоненты:** 1 1 2 -Основные объекты взаимодействия: 3 +* Producer - производитель сообщений. 4 +* Consumer - потребитель сообщений. 5 +* Queues - Очередь сообщений. 6 +В очередь могут писать несколько производителей. 7 +Очередь могут читать несколько потребителей одновременно, при сообщения будут распределяться между ними (а не дублироваться). 8 +После подтверждения прочтения сообщение удаляется из очереди. 9 +* Topics - Топик выполняет функцию широковещательного канала. 10 +Топик не хранит сообщения, а распространяет отправленное в него сообщение на всех подключенных к нему потребителей. 3 3 4 -1) IConnection 5 -connection.Start() 12 +В рамках брокера используются следующие термины: 6 6 7 -2) ISession 8 -connection.CreateSession() 14 +* Durability - свойство обозначающее, что сообщение сохраниться даже если нет ни одного подключенного потребителя. 15 +Можно сказать, что Queue обладает свойством Durability, а Topic нет. 16 +* Persistence - свойство обозначающее, что сообщение не будет потеряно в случае перезагрузки брокера (отчистки оперативной памяти). 17 +Подразумевает, что все сообщения будут сохранены в определенное хранилище - Message store. 18 +* Message store - хранилище сообщение. 19 +В качестве хранилища может выступать как файловая система, так и сторонние реализации провайдеров хранилища (в том числе и базы данных). 20 +Допустимо использование топологии, когда к одному хранилищу могут быть подключены пара брокеров, причем один будет активным, а второй резервным и будет активирован и при выходе из строя первого. 9 9 10 - 3)IQueuq11 - session.GetQueue(name)22 +Брокер допускает использование транзакций, а именно чтение группы сообщение/отправки сообщений в рамках одной транзакции. 23 +При этом, если транзакция будет прервана по середине, то все сообщение, прочитанные в рамках этой транзакции, будут снова доступны для прочтения (не будут удалены). 12 12 13 -4.1) IMessageProducer 14 -session.CreateProducer(session) 15 15 16 -4.2) IMessageConsumer 17 -session.CreateConsumer( 18 - session, 19 - selector, 20 - false 21 - ) 22 - 23 -Клиент: 24 -https://www.nuget.org/packages/Apache.NMS.ActiveMQ/ provides OpenWire 25 -https://www.nuget.org/packages/Apache.NMS.AMQP/ provides AMQP 26 - 27 - 28 28 **Материалы:** 29 29 30 -Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ 31 -https://habr.com/ru/post/471268/ 32 - 33 33 Документация: 34 34 https://activemq.apache.org/components/nms/msdoc/1.6.0/vs2005/Output/html/N_Apache_NMS.htm 35 35 36 -Выборка сообщений из очереди по условию. Selector31 +Selector. Выборка сообщений из очереди по условию. 37 37 https://activemq.apache.org/selectors 38 38 34 +Message Groups. JMSXGroupID 35 +https://activemq.apache.org/message-groups 36 + 37 +Книга 38 +[[Understanding Message Brokers | O’Reilly>>doc:Книги.O’Reilly.Understanding Message Brokers | O’Reilly.WebHome]]