2

According to official Spring Boot docs of Artemis modes:

The supported modes are: embedded (to make explicit that an embedded broker is required and should lead to an error if the broker is not available in the classpath), and native to connect to a broker using the netty transport protocol.

Adding org.apache.activemq:artemis-jms-server to your application allows you to use the embedded mode.

Is embedded mode used to create an Artemis server? What are the differences between embedded and native modes in Artemis?

Justin Bertram
  • 29,372
  • 4
  • 21
  • 43
Ray Jasson
  • 422
  • 2
  • 9
  • 23

1 Answers1

4

Apache ActiveMQ Artemis core is designed as a set of simple POJOs so if you have an application that requires messaging functionality internally but you don't want to expose that as an Apache ActiveMQ Artemis broker you can directly instantiate and embed brokers in your own application, see the documentation for further details.

When Spring Boot uses Artemis embedded mode, it connects to a broker instance running in your own application, instantiated by Spring Boot itself.

When Spring Boot uses Artemis native mode, it connects to a broker instance running out of your own application, and you can use the configuration properties in spring.artemis.* to set the connection parameters:

spring.artemis.mode=native
spring.artemis.host=192.168.1.210
spring.artemis.port=9876
spring.artemis.user=admin
spring.artemis.password=secret