作为我不断学习如何使应用程序更好地扩展的过程的一部分,我目前正在尝试为队列找到一个方向,即工作队列或工作量处理,无论你喜欢哪个短语。
在遥远的过去,我使用了 IBM MQ/Series - 它适用于金融应用程序,但如果我记得的话,它相当重。
我知道 MSMQ,也听说过不少其他的。
但首先,这是我的背景
我有一个 C#/.NET 后端 Web 应用程序,它通过 AJAX 调用等向 Javascript(主要是 jQuery 等)前端提供数据等。我有一种情况,其中某个操作涉及上传一些文件,设置一些记录数据库中的条目,向一些用户发送电子邮件等。因此,由于可能的时间延迟,我当然不想让这个过程“在线”/“实时”,而且我确信网络服务器/数据库等的开销。
因此,考虑到我需要排队和处理的“消息”类型,什么是一个好的起点(我不应该在这里简单地说!)?我应该使用 MSMQ 和/或 SQL 2008 服务代理程序,还是 ZeroMQ 之类的东西运行 - 还是应该简单地创建自己的轻量级工作负载队列服务?
我再次意识到,在没有看到全貌的情况下,很难提出完整的建议,但是任何起点都非常感谢!
大卫