我有一个asp.net网站,使用第三方exe处理请求.目前我的工作流程是
用户使用任何浏览器访问网站,并填写包含作业详细信息的表单
网站调用WCF自托管Windows服务,该服务正在侦听端口
Windows服务启动第三方exe来处理作业并将结果返回给网站
网站将返回的结果显示给用户
上面的网站是一个原型,现在需要转变为生产就绪部署.我意识到上述架构有许多可能会破坏的点.例如,如果机器电源关闭或者Windows服务崩溃并且不再监听端口,则所有当前请求都将停止处理.为了使架构更加健壮,我正在考虑以下内容
用户使用任何浏览器访问网站,并填写包含作业详细信息的表单
网站将作业详细信息写入数据库
为新作业每10秒轮询一次数据库的Windows服务将获取作业并使用第三方应用程序执行该作业.结果将写回数据库.
现在已经开始轮询数据库的网站,获取结果并将其显示给用户.
第二种体系结构为我提供了更多的日志记录功能,如果它们在队列中,则可以再次启动作业.然而,它涉及大量的轮询,可能无法扩展.有谁能推荐更好的架构?
| 归档时间: |
|
| 查看次数: |
401 次 |
| 最近记录: |