T.M. SoftStudio

feci quod potui, faciant meliora potentes

XML-схема конфигурации ActiveMQ

Элемент <broker> является основным элементом для определения конфигурации ActiveMQ-брокера (рис. 1 и 2).

Рис. 1. Общая схема элемента <broker>

Рис. 2. Атрибуты элемента <broker>

Элемент <adminView> содержит информацию о брокере для администратора.

Элемент <brokerContext> содержит информацию о контексте брокера.

Элемент <consumerSystemUsage> содержит дочерний элемент <systemUsage>, конфигурирующий системные свойства клиента брокера (рис. 3).

Рис. 3. Общая схема элемента <systemUsage>

Элемент <destinationFactory> указывает фабрику для создания объектов Destination.

Элемент <destinationInterceptors> определяет использование виртуальной очереди доставки сообщения нескольким физическим очередям.

Элемент <destinationPolicy> определяет политику объектов Destination.

Элемент <destinations> устанавливает объекты Destination, которые должны быть созданы при запуске брокера.

Элемент <ioExceptionHandler> определяет обработчик ошибок ввода/вывода при сохранении сообщений.

Элемент <jmsBridgeConnectors> обеспечивает связь с другими JMS-поставщиками.

Элемент <managementContext> конфигурирует поддержку JMX (рис. 4).

Рис. 4. Общая схема элемента <managementContext>

Элемент <messageAuthorizationPolicy> определяет объект org.apache.activemq.security.MessageAuthorizationPolicy, обеспечивающий авторизацию сообщений.

Элемент <networkConnectorURIs> определяет список адресов для связи распределенных брокеров между собой.

Элемент <networkConnectors> обеспечивает связь данного брокера с другими распределенными брокерами.

Элемент <persistenceAdapter> устанавливает набор адаптеров для связи с базами данных хранения сообщений (рис. 5—10).

Элемент <persistenceFactory> обеспечивает фабрики для адаптеров хранения.

Элемент <persistenceTaskRunnerFactory> обеспечивает управление пулом потоков сохранения.

Элемент <plugins> определяет набор используемых брокером плагинов.

Элемент <producerSystemUsage> содержит дочерний элемент <systemUsage>, конфигурирующий системные свойства брокера (см. рис. 3).

Элемент <proxyConnectors> определяет связь данного брокера с другими распределенными брокерами.

Элемент <regionBroker> представляет блок обработки сообщений (см. рис. 49).

Элемент <services> устанавливает сервисы для данного брокера (см. рис. 50).

Элемент <shutdownHooks> определяет выполнение кода по завершению работы брокера.

Элемент <sslContext> определяет конфигурацию использования протокола SSL (рис. 52).

Элемент <systemUsage> определяет системные свойства (см. рис. 3).

Элемент <taskRunnerFactory> определяет объект org.apache.activemq.thread.TaskRunnerFactory.

Элемент <tempDataStore> определяет конфигурацию объекта org.apache.activemq.store.kahadb.plist.PListStore с помощью дочернего элемента <pListStore>.

Элемент <transportConnectorURIs> указывает список адресов для соединения с брокером.

Элемент <transportConnectors> конфигурирует транспортный протокол для связи с брокером.

Дочерние элементы элемента <systemUsage>

Элемент <adapter> содержит информацию об адаптерах баз данных, используемых для хранения сообщений.

Элемент <executor> содержит информацию о пуле потоков.

Элемент <memoryUsage> конфигурирует использование памяти.

Элемент <parent> указывает родительский объект для данного объекта.

Элемент <storeUsage> определяет хранение сообщений.

Элемент <tempStore> определяет параметры хранения базы KahaDB.

Элемент <tempUsage> конфигурирует временное хранение сообщений.

Дочерние элементы элемента <adapter>

Элемент <amqPersistenceAdapter> конфигурирует адаптер для встроенной базы данных по умолчанию AMQ Message Store (рис. 5).

Рис. 5. Общая схема элемента <amqPersistenceAdapter>

Элемент <jdbcPersistenceAdapter> конфигурирует JDBC-адаптер для хранения сообщений (рис. 6).

Рис. 6. Общая схема элемента <jdbcPersistenceAdapter>

Элемент <journalPersistenceAdapter> конфигурирует адаптер хранения сообщений в log-файле (рис. 7).

Рис. 7. Общая схема элемента <journalPersistenceAdapter>

Элемент <kahaDB> конфигурирует локальную файловую базу данных хранения сообщений (рис. 8).

Рис. 8. Общая схема элемента <kahaDB>

Элемент <kahaPersistenceAdapter> конфигурирует адаптер для базы данных KahaDB (рис. 9).

Рис. 9. Общая схема элемента <kahaPersistenceAdapter>

Элемент <memoryPersistenceAdapter> конфигурирует адаптер для хранения сообщений в памяти (рис. 10).

Рис. 10. Общая схема элемента <memoryPersistenceAdapter>

Дочерние элементы элемента <memoryUsage>

Элемент <memoryUsage> содержит следующие вложенные элементы (рис. 11):

  • элемент <executor> содержит информацию о пуле потоков;

  • элемент <limiter> ограничивает использование памяти;

  • элемент <parent> указывает родительский объект для данного объекта.

Рис. 11. Общая схема элемента <memoryUsage>

Дочерние элементы элемента <storeUsage>

Рис. 12. Общая схема элемента <storeUsage>

Дочерние элементы элемента <tempUsage>

Рис. 13. Общая схема элемента <tempUsage>

Дочерние элементы элемента <destinationInterceptors>

Рис. 14. Общая схема элемента <mirroredQueue>

Рис. 15. Общая схема элемента <virtualDestinationInterceptor>

Дочерние элементы элемента <destinationPolicy>

Элемент <policyMap> определяет конфигурацию политик объектов Destination (рис. 16).

Рис. 16. Общая схема элемента <policyMap>

Элемент <policyEntry> представляет политику для определенных объектов Destination (рис. 17 и 18).

Рис. 17. Общая схема элемента <policyEntry>

Рис. 18. Атрибуты элемента <policyEntry>

Дочерние элементы элемента <destinations>

Элемент <queue> определяет конфигурацию объектов ActiveMQ Queue (рис. 19).

Рис. 19. Общая схема элемента <queue>

Элемент <compositeDestinations> определяет коллекцию объектов Destination, которым доставляется сообщение.

Элемент <topic> определяет конфигурацию объектов ActiveMQ Topic (рис. 20).

Рис 20. Общая схема элемента <topic>

Дочерние элементы элемента <ioExceptionHandler>

Элемент <defaultIOExceptionHandler> переопределяет объект org.apache.activemq.util.DefaultIOExceptionHandler (рис. 21).

Рис. 21. Общая схема элемента <defaultIOExceptionHandler>

Дочерние элементы элемента <jmsBridgeConnectors>

Рис. 22. Общая схема элемента <jmsQueueConnector>

Рис. 23. Общая схема элемента <jmsTopicConnector>

Дочерние элементы элемента <networkConnectors>

Элемент <ldapNetworkConnector> обеспечивает динамическую связь с распределенными брокерами (рис. 24).

Рис. 24. Общая схема элемента <ldapNetworkConnector>

Элемент <multicastNetworkConnector> обеспечивает многоадресную связь с распределенными брокерами (рис. 25).

Рис. 25. Общая схема элемента <multicastNetworkConnector>

Элемент <networkConnector> обеспечивает связь с распределенными брокерами с применением объекта org.apache.activemq.transport.discovery.DiscoveryAgent (рис. 26).

Рис. 26. Общая схема элемента <networkConnector>

Дочерние элементы элемента <persistenceFactory>

Рис. 27. Общая схема элемента <amqPersistenceAdapterFactory>

Рис. 28. Общая схема элемента <journalPersistenceAdapterFactory>

Рис. 29. Общая схема элемента <journaledJDBC>

Дочерние элементы элемента <plugins>

Рис. 30. Общая схема элемента <plugins>

Элемент <authorizationPlugin> определяет конфигурацию механизма авторизации (рис. 31).

Рис. 31. Общая схема <authorizationPlugin>

Элемент <connectionDotFilePlugin> представляет модуль, создающий DOT-файл для текущих соединений (рис. 32).

Рис. 32. Общая схема элемента <connectionDotFilePlugin>

Элемент <destinationDotFilePlugin> представляет модуль, создающий DOT-файл для текущих объектов Destination (рис. 33).

Рис. 33. Общая схема элемента <destinationDotFilePlugin>

Элемент <discardingDLQBrokerPlugin> представляет модуль отбрасывания сообщений, предназначенных для Dead Letter Queue (рис. 34).

Рис. 34. Общая схема элемента <discardingDLQBrokerPlugin>

Элемент <forcePersistencyModeBrokerPlugin> определяет сохранение или нет всех входящих сообщений (рис. 35).

Рис. 35. Общая схема элемента <forcePersistencyModeBrokerPlugin>

Элемент <jaasAuthenticationPlugin> представляет модуль аутентификации JAAS (рис. 36).

Рис. 36. Общая схема элемента <jaasAuthenticationPlugin>

Элемент <jaasCertificateAuthenticationPlugin> представляет модуль аутентификации JAAS/SSL (рис. 37).

Рис. 37. Общая схема элемента <jaasCertificateAuthenticationPlugin>

Элемент <jaasDualAuthenticationPlugin> представляет двойной модуль аутентификации JAAS и JAAS/SSL (рис. 38).

Рис. 38. Общая схема элемента <jaasDualAuthenticationPlugin>

Элемент <loggingBrokerPlugin> представляет модуль, отключающий/включающий регистрацию сообщений (рис. 39).

Рис. 39. Общая схема элемента <loggingBrokerPlugin>

Элемент <multicastTraceBrokerPlugin> представляет модуль регистрации для Multicast-сокета (рис. 40).

Рис. 40. Общая схема элемента <multicastTraceBrokerPlugin>

Элемент <simpleAuthenticationPlugin> представляет модуль упрощенной аутентификации (рис. 41).

Рис. 41. Общая схема элемента <simpleAuthenticationPlugin>

Элемент <statisticsBrokerPlugin> представляет модуль получения статистики MapMessage от брокера (рис. 42).

Рис. 42. Общая схема элемента <statisticsBrokerPlugin>

Элемент <timeStampingBrokerPlugin> представляет модуль установки времени действия сообщений (рис. 43).

Рис. 43. Общая схема элемента <timeStampingBrokerPlugin>

Элемент <traceBrokerPathPlugin> представляет модуль включения имени брокера в свойство сообщения для регистрации в системе распределенных брокеров (рис. 44).

Рис. 44. Общая схема элемента <traceBrokerPathPlugin>

Элемент <udpTraceBrokerPlugin> представляет модуль регистрации для UDP-сокета (рис. 45).

Рис. 45. Общая схема элемента <udpTraceBrokerPlugin>

Дочерние элементы элемента <authorizationPlugin>

Рис. 46. Общая схема элемента <authorizationMap>

Рис. 47. Общая схема элемента <lDAPAuthorizationMap>

Рис. 48. Общая схема элемента <simpleAuthorizationMap>

Дочерние элементы элемента <regionBroker>

Рис. 49. Общая схема элемента <regionBroker>

Дочерние элементы элемента <services>

Рис. 50. Общая схема элемента <services>

Элемент <brokerService> определяет конфигурацию объекта org.apache.activemq.broker.BrokerService, обеспечивающего жизненный цикл брокера (рис. 51).

Рис. 51. Общая схема элемента <brokerService>

Рис. 51. Общая схема элемента <brokerService> (продолжение)

Рис. 51. Общая схема элемента <brokerService> (окончание)

Дочерние элементы элемента <sslContext>

Рис. 52. Общая схема элемента <sslContext>