Asp.net中的调度是什么最佳解决方案

本文关键字:是什么 最佳 解决方案 调度 net Asp | 更新日期: 2023-09-27 18:32:52

我想在 Asp.net 中调度

我有以下选项来实现这一点

  1. 编写SQLServer JOB(我不想这样做。不想离开 .Net 环境(

  2. 第二个选项是我将编写Windows服务,此窗口服务将调用 asp.net 网络服务,然后此网络服务调用 asp.net 方法
    (我也不需要这样做,因为我的托管服务提供商可能不允许我安装 窗口服务(

  3. 第三个选项是我在全局类Application_Start事件中调用我的调度方法 (缺点是,Web服务器会随时杀死线程(

  4. 在主页事件中调用调度代码Page_Load(可能是几个小时没有人访问我的网站 ,另外由于调度代码,页面执行可能会很慢(

  5. 我还发现一些在线服务可以按给定的时间间隔调用您的页面,下面给出了一些

    http://www.cronservice.co.uk/new/http://scheduler.codeeffects.com

有人给我博彩玩家的解决方案,并解释为什么它是博彩玩家吗?

提前致谢

Asp.net中的调度是什么最佳解决方案

ASP.NET 应用程序不是实现调度的正确位置。我建议创建一个以短间隔运行的服务或计划任务。

在共享托管环境中,您没有太多选择。我的主机 (WinHost( 允许远程访问他们的数据库,因此我能够创建一个使用任务计划程序在本地服务器上运行的可执行文件。

由于数据库是通过互联网访问的,因此性能不是很好,但它仍然比尝试使用 ASP.NET 运行伪计划任务要好。

一些房东还提供一项服务,该服务将定期请求您网站中的网址。但是,这对我不起作用,因为我必须运行的任务花费的时间比请求超时更长。

没有一种解决方案适合所有人。SQL 作业和 Windows 作业(通过 Windows 任务调度程序计划(使用非常广泛。在我以前的一个工作场所,他们的工作在多个平台(大型机,Windows,sql服务器(上运行。其中一些工作的失败,每天将花费数千美元。所以他们采用了一种叫做ESP的东西。该软件监控所有平台上的作业,并在发生故障时向控制室发送消息。

如果您对要求有更多的了解,我们也许能够更好地帮助您。

ASP.NET 不是

放置计划任务的正确位置。当我必须创建计划任务时,我正在使用 Quartz.net。

创建一个启动任务的页面,并将其放置在 URL http://www.mydomain.com/runtask。

在家用电脑上创建一个计划任务,用于向 http://www.mydomain.com/runtask 发送请求。

您需要始终保持家用 PC 处于打开状态。

理想情况下,我会选择数字 1,因为您可以获得完全控制/历史记录/错误报告等。可以在 .NET 中编写 SSIS 作业,并让 SQL 服务器对其进行计划。

但是,我在共享主机方面遇到了类似的问题,非常严格。我所做的是创建一个页面,该页面在页面加载时运行该过程(使用查询字符串中的验证以确保安全性(。然后,我使用一台始终打开的机器来调度Windows任务计划程序(这是Windows的标准配置的一部分(来调用一些VB脚本来打开浏览器然后关闭它。