从API

时间:2015-12-16 11:30:22

标签: java dropwizard

我编写了一个Web服务(DropWizard),它通过POST接受请求以执行可能需要相当长时间的操作。相当长的时间意味着可能需要1-5分钟才能完成。

那说来电者不需要回复。只需要一个简单的200来确认收到消息就足够了。对于任何好奇的人来说,它实际上是一个PayPal IPN WebHook。

我只想一次执行其中一项操作(可以选择在将来增加),这样我的系统就不会过载。

我应该考虑使用哪种队列机制。这可能没有说明,但我必须假设API实例可以随时被杀死,从而清除内存。我需要一个临时的地方来存储队列,以便我可以在重新启动时恢复服务器停止的位置。

谢谢。

2 个答案:

答案 0 :(得分:0)

您可以使用Apache Kafka Queue。文档很清楚。它应该会帮助你。

http://kafka.apache.org/

希望有所帮助!

答案 1 :(得分:0)

你可以使用activeMQ持久化。它重量很轻,使用方便。看看http://activemq.apache.org/persistence.html它将指导您完成一步一步的过程。