Ole*_*ann 5 ruby-on-rails backgroundworker amazon-sqs amazon-web-services
我即将发布具有常见网络功能(消息,墙壁等)的rails应用程序.我想使用某种后台处理(很可能是Bj)来从请求/响应周期中卸载任务.
当用户通过电子邮件邀请朋友加入和收发电子邮件时,就会发生这种情况
我不确定是否应该在我的数据库中删除这些邀请和通知,使用模型,然后每隔x分钟使用一个工作进程处理它,或者我是否应该使用Amazon SQS,存储消息并邀请那里并让我的工作人员从Amazon SQS检索它以进行处理(发送邀请/通知).
亚马逊的方法会从我的数据库中卸载,但我想从那里检索消息的速度较慢.
你怎么看?
Joh*_*ley 11
你的标题声明你有一个Rails性能问题,但你知道这一点吗?从你的问题的其余部分来看,听起来你正试图预测未来可能的性能问题.理解性能问题的唯一方法是让您的应用程序进入疯狂状态并对其进行分析.这样做可以为您提供有关实际性能问题的经验数据.
鉴于亚马逊SQS是不是免费的,事实上,使用它几乎肯定会增加复杂到你的应用程序,我会迁移到它,如果和当数据库负载成为一个问题.不要试图在问题出现之前再次猜测,因为你会发现当你的应用程序上线时你可能会遇到不同的问题,其中一些你可能没有考虑过.
主要的一点是你已经决定使用后台处理,这是正确的决定,因为任何类型的非瞬时处理都不属于Rails的请求/响应周期,因为它会阻止Rails处理.如果需要,您可以随后使用Amazon扩展.
| 归档时间: |
|
| 查看次数: |
4233 次 |
| 最近记录: |