对于sqs消费者,使用amazonsqs java消息传递库是否明智?

zzoitvuj  于 2021-06-27  发布在  Java
关注(0)|答案(1)|浏览(458)

要求:需要使用来自sqs队列的成批消息。处理时需要对数据应用一系列操作。消息频率在一段时间内可能很高,因此应用程序应该能够通过相应的伸缩来处理它。我们开发应用程序的时间更长,一旦开发出来,就不应该有任何重大的开发变化。
项目是基于drop向导的框架。
选项:
lambda-排除了这个选项,因为在使用lambda的情况下,sqs中的大量消息会导致更多的失败(最终在dlq中)。我还需要对数据执行多个操作,其中lambda只适合对数据执行一个操作。
aws sqs sdk-需要为此写下线程逻辑(用于轮询和消息处理)
aws提供的基于jms的sqs-sdk(amazonsqs-java消息传递库)似乎非常适合我的用例。因为它将处理轮询和并发逻辑。但问题是这个jar的最新版本是2019年4月发布的。已经快两年了,这个图书馆还没有更新。还有许多悬而未决的问题没有解决。
我担心aws会停用这个库,而且我的项目也应该以这样的方式来构建,这样将来就不会有像依赖关系改变这样的重大开发变化了。
有人能告诉我,我是否可以去这个库或更好的只是坚持香草aws sqs sdk?如果有任何其他选择,请同时提及。

ibps3vxo

ibps3vxo1#

我不明白“lambda最适合只处理一个操作”。你为什么这么说?唯一的限制是执行一系列操作所需的时间。如果在运行多个操作时始终出现超时,则可以使用step函数。看到了吗https://docs.aws.amazon.com/step-functions/latest/dg/connect-lambda.html.

相关问题