【问题标题】:Asp.net application crash on live server while we working on it, on restart IIS it working again当我们处理它时,Asp.net 应用程序在实时服务器上崩溃,在重新启动 IIS 时它再次工作
【发布时间】:2019-03-12 22:34:28
【问题描述】:

我的 asp.net 应用程序在我们处理它时有时会在实时服务器中崩溃。所有用户都面临[Exceptions]黄色错误屏幕。并在异常日志中抛出数十个异常。

[Get] 找到 0 个表格行

此异常随机发生,而不是特定位置或特定点击。 但是当我在 IIS 上重新启动我的应用程序时,应用程序工作正常。但同样的问题又出现了几个小时。

当我尝试重新登录时,应用程序找不到我的凭据。但在重新启动 IIS 后。我使用相同的凭据成功登录应用程序。

总结:没有找到崩溃的具体原因。当我重新启动 IIS 时工作正常。

  1. 下拉列表未从数据源中找到数据
  2. 网格表访问表格时发现0行。

在 IIS 重新启动后访问相同的网格和下拉列表时,它有数据。

注意:感觉我们失去了与数据库的连接。但实际上它 有连接但找不到数据

【问题讨论】:

  • 异常消息/堆栈跟踪到底是什么?
  • 史蒂夫给出了几十个例外。但我与您分享一些异常 innerException====>System.IndexOutOfRangeException: 找不到表 0。
  • 定义“我们正在努力”。当它崩溃时你到底在做什么?
  • 此异常随机发生,而不是特定位置或特定点击。
  • 你为什么说“我们正在努力”?这意味着在实时服务器上进行开发。或者您的意思是“当用户使用网站时”

标签: asp.net iis


【解决方案1】:

尝试捕获异常并检查服务器响应时间

【讨论】:

  • 当服务器崩溃时,它会在排泄日志中添加 100 数百个异常。我接受哪个异常。
【解决方案2】:

经过大量搜索,我找到了问题的深度,问题是内存泄漏。

.NET 应用程序中的内存泄漏一直是程序员的问题 恶梦。内存泄漏是最大的问题 生产服务器。制作服务器通常需要运行 最少的停机时间。内存泄漏增长缓慢,并在一段时间后 通过消耗大量内存来关闭服务器。大部分的 人们重新启动系统,使其暂时工作,并发送一个 对客户的停机时间表示抱歉

一些使用完整的链接是: link 1 link 2

问题的正确解决是非常耗时的,需要一个技能十足的人。 临时解决方案是当您的应用程序关闭时,您需要以编程方式重置 ISS。

Process.Start(@"C:\WINDOWS\system32\iisreset.exe", "/noforce");

进程 p = new Process(); p.StartInfo = 新 ProcessStartInfo("iisreset.exe"); p.Start();

我知道这不是一个好的解决方案,但这可以减轻你的压力。

要获得正确的解决方案,请查看link

【讨论】:

    猜你喜欢
    • 2019-11-05
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多