Исходный код вики Apache ActiveMQ
Версия 10.2 от Alexandr Fokin на 2021/12/26 15:56
Скрыть последних авторов
| author | version | line-number | content |
|---|---|---|---|
| |
9.1 | 1 | **Компоненты:** |
| 2 | |||
| 3 | * Producer - производитель сообщений. | ||
| 4 | * Consumer - потребитель сообщений. | ||
| 5 | * Queues - Очередь сообщений. | ||
| 6 | В очередь могут писать несколько производителей. | ||
| 7 | Очередь могут читать несколько потребителей одновременно, при сообщения будут распределяться между ними (а не дублироваться). | ||
| 8 | После подтверждения прочтения сообщение удаляется из очереди. | ||
| 9 | * Topics - Топик выполняет функцию широковещательного канала. | ||
| 10 | Топик не хранит сообщения, а распространяет отправленное в него сообщение на всех подключенных к нему потребителей. | ||
| 11 | |||
| 12 | В рамках брокера используются следующие термины: | ||
| 13 | |||
| 14 | * Durability - свойство обозначающее, что сообщение сохраниться даже если нет ни одного подключенного потребителя. | ||
| 15 | Можно сказать, что Queue обладает свойством Durability, а Topic нет. | ||
| 16 | * Persistence - свойство обозначающее, что сообщение не будет потеряно в случае перезагрузки брокера (отчистки оперативной памяти). | ||
| 17 | Подразумевает, что все сообщения будут сохранены в определенное хранилище - Message store. | ||
| 18 | * Message store - хранилище сообщение. | ||
| 19 | В качестве хранилища может выступать как файловая система, так и сторонние реализации провайдеров хранилища (в том числе и базы данных). | ||
| 20 | Допустимо использование топологии, когда к одному хранилищу могут быть подключены пара брокеров, причем один будет активным, а второй резервным и будет активирован и при выходе из строя первого. | ||
| 21 | |||
| 22 | Брокер допускает использование транзакций, а именно чтение группы сообщение/отправки сообщений в рамках одной транзакции. | ||
| 23 | При этом, если транзакция будет прервана по середине, то все сообщение, прочитанные в рамках этой транзакции, будут снова доступны для прочтения (не будут удалены). | ||
| 24 | |||
| 25 | |||
| |
6.1 | 26 | **Материалы:** |
| 27 | |||
| 28 | Документация: | ||
| 29 | https://activemq.apache.org/components/nms/msdoc/1.6.0/vs2005/Output/html/N_Apache_NMS.htm | ||
| 30 | |||
| |
10.2 | 31 | Книга |
| 32 | [[Understanding Message Brokers | O’Reilly>>doc:Книги.O’Reilly.Understanding Message Brokers | O’Reilly.WebHome]] | ||
| 33 | |||
| |
8.1 | 34 | Selector. Выборка сообщений из очереди по условию. |
| |
6.1 | 35 | https://activemq.apache.org/selectors |
| 36 | |||
| |
8.1 | 37 | Message Groups. JMSXGroupID |
| 38 | https://activemq.apache.org/message-groups |