我有一组 EC2 实例,其中安装了一个使用相同 SQS 队列的进程,将其命名为 my_queue
。这个队列非常活跃,每分钟写入超过 250 条消息并连续删除这 250 条消息。我此时遇到的问题是它开始变慢,因此,我的系统无法正常工作,一些进程挂起,因为 SQS 关闭了连接并写入了远程机器。
我使用 SQS 的最大优势是 1) 它非常易于使用,无需安装或配置本地文件,2) 它是一个可靠的工具,因为我只需要一个 key 和 key_secret 即可开始推送并拉取消息。
我的问题是:
- SQS 有哪些替代方案,我知道 Redis、RabbittMQ,但两者都需要本地部署和配置,这可能会导致功能不可靠,例如,如果运行它的机器突然崩溃,其他机器无法写入消息到队列。
- 如果我选择像 Redis 这样的东西部署在我的盒子里,它比 SQS 值得吗,还是我应该继续使用 SQS 并寻找其他解决方案?
谢谢
最佳答案
你现在可能已经解决了这个问题,因为这个问题很老了;前段时间我遇到了同样的问题,在我的应用程序中轮询 SQS 的成本($$)相当大。我不费吹灰之力就成功迁移到了REDIS。我最终将 REDIS 主机迁移到了 ElasticCache 的 REDIS,并且对该解决方案非常满意。我能够对其进行快照并根据需要对其进行缩放。希望有所帮助。
关于python - 适用于 Python 的 Amazon SQS 的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20983047/