Spring-Amqp和阿波罗

时间:2014-12-02 19:05:02

标签: java spring rabbitmq spring-amqp apollo

我正在使用带有RabbitMQ的Spring-AMQP库进行制作。我想写一些可行的测试"干净利落地#34;我正在考虑使用嵌入式代理并模拟响应。我知道我不能嵌入Rabbit,但是想知道Spring AMQP是否可以与Apollo或其他可以在JVM中工作的代理一起工作。

我没有发布和订阅,并且如果需要,可以使用特定于供应商的代码来设置队列。

谢谢!

1 个答案:

答案 0 :(得分:0)

没有;虽然有一般的抽象(在spring-amqp项目中),但目前只有RabbitMQ(spring-rabbit)的具体实现。

由于AMQP是一种有线协议,因此您可以将Spring AMQP下的Rabbit客户端与其他代理一起使用,但前提是它(代理)支持相同的协议版本。 Apollo是AMQP 1.0,与RabbitMQ符合的版本完全不同(0-9-1)。

对于框架本身,我们使用Mockito来模拟兔子amqp-client。对于模拟太难的更复杂测试,以及集成测试,如果@Rule上没有代理,我们使用JUnit BrokerRunninglocalhost)来跳过测试