从ASP.NET页运行长时间运行的proc(不需要返回) [英] Run long-running sproc (that doesn't need to return) from ASP.NET page

查看:54
本文介绍了从ASP.NET页运行长时间运行的proc(不需要返回)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道您将如何从页面运行存储过程,并且即使页面关闭也只能让它完成".不需要返回任何数据.

I would like to know how you would run a stored procedure from a page and just "let it finish" even if the page is closed. It doesn't need to return any data.

推荐答案

以数据库为中心的选项是:

A database-centric option would be:

  • 创建一个表,其中将包含要执行的长时间运行的作业的列表(或队列).
  • 让应用程序根据需要,何时以及按需要向队列添加一个条目.这就是全部.登录并输入后,无需维护任何Web会话或状态数据.
  • 已将SQL Agent作业配置为每隔1、2、5,每分钟检查一次,以查看是否有任何要运行的作业.
  • 如果还有尚未开始的项目,请将最新的项目标记为已开始,然后将其启动.
  • 完成后,将其标记为已完成,或者将其删除
  • 检查是否还有其他项目要运行.如果有,请重复;如果没有,请退出工作.

根据容量,您可以运行此作业的多个(不同名称)副本,并同时处理列表中的项目.

Depending on capacity, you could have several (differently named) copies of this job running, concurrently processing items from the list.

(我将这种方法用于运行时间很长的方法.这是一种管理型技巧,但它可能适合您的情况.)

(I've used this method for very long-running methods. It's more an admin-type trick, but it may be appropriate for your situation.)

这篇关于从ASP.NET页运行长时间运行的proc(不需要返回)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆