有没有一种内存中的SQS?

7
我正在寻找一些能够模仿 SQS 的 REST API,并且适用于稳健 / 非易错、小型逻辑 / 单元测试的东西。
2个回答

8

这是我已经做了一段时间并取得了很大成功的事情。如果Gradle是你的构建系统,我已经编写了一个插件,可以自动启动它作为构建的一部分:http://bit.ly/1sbLoff - tddmonkey

1

JMSMSMQ都提供类似的队列基础设施。根据您的平台,您可以使用这两种技术中的任何一种。两者都很强大。除了磁盘支持的事务队列外,MSMQ还可以提供内存(非事务性)队列。

RabbitMQ是另一个流行的选择,应该提供SQS功能的超集。但我没有直接使用过它。

创建一个模仿SQS接口的包装器应该相当简单。

更新

ActiveMQ提供REST API。但是,该API与SQS的API不同。

您可以使用它并包装API差异,或者您可以创建自己的REST API,完全镜像SQS API,并包装任何您希望使用的MQ系统。

http://activemq.apache.org/restful-queue.html


我应该表述得更清楚。我正在寻找一个具有与SQS相同的REST API的东西,它在单元测试的目的上基本上是可以替换的。 - Noel Yap
1
ActiveMQ提供了一个REST API(虽然与SQS略有不同)。您可以使用它并包装API差异,或者您可以创建自己的REST API,完全镜像SQS API并包装任何您希望的MQ系统。 - Eric J.
我试图测试的东西就是这个包装器。想法是在单元测试中使用伪造对象来使其测试更加健壮和快速,并对伪造对象进行完整的集成测试(以确保其行为仍然与底层服务相同)。 - Noel Yap

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接