gpt4 book ai didi

java - 简单的 Java AMQP 服务器

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:29 25 4
gpt4 key购买 nike

是否有任何用 Java 编写的简单的 AMQP 服务器/代理实现?

我需要将它用于本地集成测试。我想从 ant/maven 开始,我不需要集群、持久性、性能等任何特性。只是一个类似 RabbitMQ 的模拟实例,无需安装(就像 maven pom 的依赖项一样)和配置。

最佳答案

我想说编写集成测试/端到端测试/自动用户验收测试来测试整个应用程序是完全合法的,包括在 MQ 中完成的所有事情。您应该明智地选择能够触发此类事件的测试用例,因为它会大大减慢测试的反馈循环。

org.apache.qpid ,您可以简单地将其作为 mvn/gradle (mvn central) 包含在您的应用程序中依赖项(gradle 示例):

testCompile 'org.apache.qpid:qpid-broker:6.0.1'

然后添加一个包含 ExternalResourceRule,它会在您的测试之前启动代理,有点类似于这个相当简单的设置:

@Rule
private static final ExternalResource embeddedAMQPBroker = new ExternalResource() {
Broker broker;

@Override
protected void before() throws Throwable {
BrokerOptions brokerOptions = new BrokerOptions();
brokerOptions.setConfigProperty("qpid.amqp_port", "55672");
broker = new Broker();
broker.startup(brokerOptions);
}

@Override
protected void after() {
broker.shutdown();
}
};

未经测试,因为对我来说这不起作用,因为我所有的应用程序都包含 Jetty 9 并且 QPID(仍然)需要 Jetty<9。

关于java - 简单的 Java AMQP 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2710270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com