Исходный код вики Apache ActiveMQ

Версия 9.1 от Alexandr Fokin на 2021/12/26 15:49

Последние авторы
1 **Компоненты:**
2
3 * Producer - производитель сообщений.
4 * Consumer - потребитель сообщений.
5 * Queues - Очередь сообщений.
6 В очередь могут писать несколько производителей.
7 Очередь могут читать несколько потребителей одновременно, при сообщения будут распределяться между ними (а не дублироваться).
8 После подтверждения прочтения сообщение удаляется из очереди.
9 * Topics - Топик выполняет функцию широковещательного канала.
10 Топик не хранит сообщения, а распространяет отправленное в него сообщение на всех подключенных к нему потребителей.
11
12
13 В рамках брокера используются следующие термины:
14
15 * Durability - свойство обозначающее, что сообщение сохраниться даже если нет ни одного подключенного потребителя.
16 Можно сказать, что Queue обладает свойством Durability, а Topic нет.
17 * Persistence - свойство обозначающее, что сообщение не будет потеряно в случае перезагрузки брокера (отчистки оперативной памяти).
18 Подразумевает, что все сообщения будут сохранены в определенное хранилище - Message store.
19 * Message store - хранилище сообщение. 
20 В качестве хранилища может выступать как файловая система, так и сторонние реализации провайдеров хранилища (в том числе и базы данных).
21 Допустимо использование топологии, когда к одному хранилищу могут быть подключены пара брокеров, причем один будет активным, а второй резервным и будет активирован и при выходе из строя первого.
22
23
24 Брокер допускает использование транзакций, а именно чтение группы сообщение/отправки сообщений в рамках одной транзакции.
25 При этом, если транзакция будет прервана по середине, то все сообщение, прочитанные в рамках этой транзакции, будут снова доступны для прочтения (не будут удалены).
26
27
28 **Материалы:**
29
30 Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 2. ActiveMQ
31 https://habr.com/ru/post/471268/
32
33 Документация:
34 https://activemq.apache.org/components/nms/msdoc/1.6.0/vs2005/Output/html/N_Apache_NMS.htm
35
36 Selector. Выборка сообщений из очереди по условию.
37 https://activemq.apache.org/selectors
38
39 Message Groups. JMSXGroupID
40 https://activemq.apache.org/message-groups