有哪些设计成功用于在Windows Azure上实现作业处理?
要求:
迄今为止的研究:
关于工作完成的通知:
有没有人有过实现此类Job系统的经验(实时,低延迟,以及调用者的完成通知)?
由于
答案 0 :(得分:2)
实际上,队列并不支持推送。关于队列的整个想法是接收者不需要实时接收消息,并且想要定期检查消息。如果需要实时通信,可以在接收方创建HTTP / TCP侦听器,让发送方发出HTTP / TCP请求。
因此,一种方法是使用内部端点在Web角色上创建Web服务。您使用队列将服务的地址以及消息发送到辅助角色。作业完成后,辅助角色将调用该服务以通知Web角色该作业已完成。
这种方法很好,但它没有提供太多价值。它无法在UI上显示某些内容(除非您实现Web套接字),因为服务器无法通知浏览器。因此,如果您想在浏览器客户端中显示通知,我建议您使用拉解决方案(除非您实现Web套接字)。如果您使用的是富客户端,则可以在客户端计算机上托管Web服务,并让worker角色通过调用该服务来通知客户端。
最诚挚的问候,
徐明。