【问题标题】:Keep MSSQL database (application pool) responsive C#保持 MSSQL 数据库(应用程序池)响应 C#
【发布时间】:2015-12-04 23:51:43
【问题描述】:

首先让我道歉,因为我真的不知道如何表达这个问题。

我遇到的问题是在用户访问我的网站时试图让我的数据库保持“活动”状态。一个例子是,如果我构建我的 c# asp.net 应用程序并发布它,然后尝试导航到它,它需要一段时间才能响应(我明白,这对我来说不是问题)问题是不是如果有人有一段时间没有访问该站点,似乎又需要一段时间,就像会话计时器已经过去一样,我不确定这是否与 App Pool 回收有关?

我尝试运行计划任务以每 15 分钟访问一次数据库(试图使其保持响应),但这似乎不起作用,它每 15 分钟运行一次,持续 5 小时,然后我在随机调用中收到一条消息,该请求已花费超过 4 秒的时间来响应并因此失败。

然后我的问题是,我如何保持与数据库/网站的连接响应,以便每次有人请求时,网站快速加载,而不必“启动”

一如既往的亲切

【问题讨论】:

    标签: c# sql application-pool


    【解决方案1】:

    我建议增加连接字符串中的连接池大小。

    【讨论】:

      【解决方案2】:

      这看起来像你想要的: 当访问间隔时间较长时保持 ASP.NET IIS 网站响应:Keep an ASP.NET IIS website responsive when time between visits is long

      【讨论】:

        【解决方案3】:

        你可以考虑IIS application auto-start?

        一些 Web 应用程序在准备好处理请求之前需要加载大量数据,或执行昂贵的初始化处理。今天使用 ASP.NET 的开发人员经常使用应用程序的 Global.asax 文件中的“Application_Start”事件处理程序(在请求第一次执行时触发)来完成这项工作。然后,他们要么设计自定义脚本来向应用程序发送虚假请求,以定期“唤醒它”并在客户点击它之前执行此代码,要么只是让不幸的第一个访问应用程序的客户在此逻辑完成之前等待,然后再处理请求(这可能会导致他们长时间延迟)。

        ASP.NET 4 附带了一个名为“自动启动”的新功能,可以更好地解决这种情况,并且当 ASP.NET 4 在 IIS 7.5 上运行时可用

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-10-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-01-25
          相关资源
          最近更新 更多