Apache Active MQ - Механизмы 

Page / - Изменено Alexandr Fokin в 2023/02/02 00:16 

Механизмы 
Изменено Alexandr Fokin
в 2023/02/02 00:16

Оглавление

Механизмы	
Транзакции	Брокер допускает использование транзакций, а именно чтение группы сообщение/отправки сообщений в рамках одной транзакции.
При этом, если транзакция будет прервана по середине, то все сообщение, прочитанные в рамках этой транзакции, будут снова доступны для прочтения (не будут удалены).	
Хранилище сообщение.
Message store	В качестве хранилища может выступать как файловая система, так и сторонние реализации провайдеров хранилища (в том числе и базы данных).
Допустимо использование топологии, когда к одному хранилищу могут быть подключены пара брокеров, причем один будет активным, а второй резервным и будет активирован и при выходе из строя первого.	
Механизм подтверждения получения. Acknowledgement mode	Параметр, отвечающий за подтверждение получения сообщения: "AcknowledgementMode"
https://activemq.apache.org/components/nms/msdoc/1.6.0/vs2005/Output/html/T_Apache_NMS_AcknowledgementMode.htm
Параметр может быть задан на уровне
IConnection и ISession
По умолчанию данный параметр установлен в "AutoAcknowledge".
Для использования модели:
(Получение -> Обработка -> Подтверждение)
необходимо выбрать режим "ClientAcknowledge" и использовать метод message.Acknowledge()	
Selector.
Выборка сообщений из очереди по условию.	Selectors
https://activemq.apache.org/selectors	
Задержка отправки.
Delayed delivery	 	
Message Groups. JMSXGroupID	Message Groups. JMSXGroupID
https://activemq.apache.org/message-groups	

Свойства	
Durability	Свойство обозначающее, что сообщение сохраниться даже если нет ни одного подключенного потребителя.
Можно сказать, что Queue обладает свойством Durability, а Topic нет.	
Persistence	Свойство обозначающее, что сообщение не будет потеряно в случае перезагрузки брокера (отчистки оперативной памяти).
Подразумевает, что все сообщения будут сохранены в определенное хранилище - Message store