如何连接到 ActiveMQ Artemis 嵌入式服务器?

阿米特·波克雷尔

我有一个嵌入式 ActiveMQ Artemis 应用程序,我已经开始使用以下配置和代码:

broker.xml

<?xml version='1.0'?>
<configuration
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="urn:activemq"
    xsi:schemaLocation="urn:activemq /schema/artemis-server.xsd">
    <core xmlns="urn:activemq:core"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="urn:activemq:core ">

        <persistence-enabled>false</persistence-enabled>
        <paging-directory>target/data/paging</paging-directory>
        <bindings-directory>target/data/bindings</bindings-directory>
        <journal-directory>target/data/journal</journal-directory>
        <large-messages-directory>target/data/large-messages</large-messages-directory>
       
        <acceptors>

            <acceptor name="in-vm">vm://0</acceptor>
        </acceptors>

        <security-settings>
            <security-setting match="#">
                <permission type="createNonDurableQueue" roles="guest"/>
                <permission type="deleteNonDurableQueue" roles="guest"/>
                <permission type="createDurableQueue" roles="guest"/>
                <permission type="deleteDurableQueue" roles="guest"/>
                <permission type="createAddress" roles="guest"/>
                <permission type="deleteAddress" roles="guest"/>
                <permission type="consume" roles="guest"/>
                <permission type="browse" roles="guest"/>
                <permission type="send" roles="guest"/>
                <!-- we need this otherwise ./artemis data imp wouldn't work -->
                <permission type="manage" roles="guest"/>
            </security-setting>
        </security-settings>

        <address-settings>
            ...
        </address-settings>

        <addresses>
            ...
        </addresses>

    </core>
</configuration>

jndi.properties

java.naming.factory.initial=org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory
connectionFactory.ConnectionFactory=vm://0

Main.java

SecurityConfiguration securityConfig = new SecurityConfiguration();
securityConfig.addUser("guest", "guest");
securityConfig.addRole("guest", "guest");
securityConfig.setDefaultUser("guest");
ActiveMQJAASSecurityManager securityManager = new ActiveMQJAASSecurityManager(InVMLoginModule.class.getName(), securityConfig);

// Step 2. Create and start embedded broker.
server = ActiveMQServers.newActiveMQServer("broker.xml", null, securityManager);
server.start();

我几乎没有生成消息和消费消息的应用程序。如何配置这些应用程序,以便它们与嵌入式服务器通信以生成和使用消息。当我tcp://localhost:61616用作代理 URL 时,我无法连接到嵌入式服务器。为了实现我想要做的事情,我应该进行哪些配置更改。

贾斯汀伯特伦

这是acceptor唯一的

<acceptor name="in-vm">vm://0</acceptor>

因此,这是您可以从客户端使用的唯一 URL:vm://0

如果要连接,tcp://localhost:61616则需要配置相应的acceptor,例如:

<acceptor name="activemq">tcp://localhost:61616</acceptor>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何干净地关闭嵌入式ActiveMQ Artemis

Wildfly 11连接到远程Artemis ActiveMQ服务器配置

我没有连接到 ActiveMQ Artemis Web 控制台中的服务器

如何配置 ActiveMQ Artemis 服务器进行远程访问?

使用 QueueExplorer 连接到 ActiveMQ Artemis

ActiveMQ Artemis的池连接工厂

ActiveMQ Artemis的池连接工厂

将Boomi JMS连接器配置为ActiveMQ Artemis

ActiveMQ Artemis ha=true 和 SSL 连接器

连接到activemq artemis时使用nodejs stompit的连接超时

使用Core API连接到ActiveMQ Artemis Docker容器

复制的 ActiveMQ Artemis 服务器 - 不复制消息

如何加密 ActiveMQ Artemis 中的静态数据?

如何找到嵌入式Redis端口并杀死嵌入式Redis服务器

如何关闭Spring Boot嵌入式服务器

尝试连接到Openshift上部署的ActiveMQ Artemis时,连接被拒绝

如何通过编程设置用户名和密码来连接到ActiveMQ服务器?

ActiveMQ Artemis - 连接到从属实例的 Web 控制台

ActiveMQ Artemis 中的集群

ActiveMQ Artemis 消息 ID

ActiveMQ Artemis:全盘策略

使用嵌入式码头,如何将ServerConnector链接到服务器?

如何将日志从 ActiveMQ Artemis 1.5.6 迁移到 2.7.0?

如何在ActiveMQ Artemis群集中启用REST

如何使用Spring Boot和ActiveMQ Artemis复制?

如何解决新的ActiveMQ Artemis安装阻止问题?

如何查找/定义用于ActiveMQ Artemis监视的JMX密钥

如何热导出 ActiveMQ Artemis 的配置并热导入?

为 ActiveMQ Artemis 中的特定记录器启用 TRACE