加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

通过ASP.NET调用的长时间运行任务的模式

发布时间:2020-12-16 09:34:44 所属栏目:asp.Net 来源:网络整理
导读:我需要从ASP.NET页面调用长时间运行的任务,并允许用户在执行时查看任务进度. 在我目前的情况下,我想将一系列数据文件中的数据导入数据库,但这需要相当多的处理.我希望用户能够看到任务的文件有多远,以及在此过程中遇到的任何问题. 由于处理资源有限,我想将此
我需要从ASP.NET页面调用长时间运行的任务,并允许用户在执行时查看任务进度.

在我目前的情况下,我想将一系列数据文件中的数据导入数据库,但这需要相当多的处理.我希望用户能够看到任务的文件有多远,以及在此过程中遇到的任何问题.

由于处理资源有限,我想将此服务的请求排队.

我最近看过Windows Workflow并想知道它是否可以提供解决方案?

我在想一个可能看起来像这样的解决方案:

ASP.NET AJAX页面 – > WCF服务 – > MSMQ – >工作流服务*或* Windows服务

有没有人有任何想法,经验或以前做过这类事情?

解决方法

我有一本书明确介绍了如何集成WF(WorkFlow)和WCF.显然,这里发布的内容太多了.我认为你的问题应该得到更长的答案,而不是在这个论坛上可以很容易地回答,但是 Microsoft offers some guidance.

Google搜索“WCF和WF”会产生大量结果.

我确实有一个正在开发的应用程序,我们使用类似的过程使用MSMQ.我们的想法是在产品召回或影响大量商店的已知问题的情况下向我们的所有商店发送紧急信息.它开发和测试好.

由于业务需求,我们最终没有使用MSMQ – 我们需要知道是否没有立即收到消息以便我们可以调用商店,而不是让他们的PC能够从他们的PC获取消息时获取它队列.但是,它确实很有效.

我上面链接的文章是一个很好的起点.

我们当前的设计,即我们使用的设计,完全符合您对Windows服务的要求.

>我们有一个网页可以输入消息并选择分发列表. – 这些保存在数据库中>我们有一个单独的Windows服务(我们称之为AlertSender),它轮询数据库并检查新消息.>商店级PC具有Windows服务,该服务托管侦听消息的WCF客户端(AlertListener)>当AlertSender找到需要熄灭的消息时,它会将它们发送到AlertListener,后者负责向商店显示消息并播放警报声.>在发送消息时,AlertSender会更新数据库中消息的状态.>当商店收到消息时,同事输入他们的员工#并单击按钮以确认他们已收到消息. (对我们来说是关键业务要求,因为如果所有商店都没有得到消息,我们可能需要实际呼叫他们让他们从货架上移除受污染的产品等)>最后,我们的管理部分有一个与AlertId绑定的报告(ASP.NET),它显示所有待处理的消息及其状态.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读