gpt4 book ai didi

asp.net - 追踪数据库连接问题

转载 作者:行者123 更新时间:2023-12-02 21:18:25 24 4
gpt4 key购买 nike

背景

我们在不同的 Web 服务器上有许多 Web 应用程序,这些应用程序连接到单个数据库服务器。在过去的几个月中,我们注意到,每隔一段时间,我们的 Web 服务器将无法连接到数据库服务器。

我们的环境

我们有几个不同的 Web 环境,一些运行 ColdFusion,另一些运行 .NET。 .NET 应用程序既是 Web 窗体又是 MVC。它们跨越从 2.0 到 4.5 的多个版本。 ColdFusion 和.NET Web 服务器都是基于Windows 的机器。 ColdFusion 和 .NET Web 环境都是集群式的,其中一些机器是物理的,而另一些机器是虚拟的。

我们的数据库服务器是SQL Server 2008 r2。它包含多个数据库。每个应用程序都有自己的数据库用户,该用户连接到服务器,该服务器仅授予其对特定数据库的访问权限。

其他事实

  • 当我们发现问题时,它们会在短时间内突然出现,持续时间从几秒到几分钟不等。
  • 当我们发现问题时,突发的错误包含来自多个不同应用的错误,而不仅仅是一次应用的错误。
  • 当我们发现问题时,突发的错误包含来自不同网络环境的应用程序。 (这让我们认为我们可以排除应用程序本身的问题)
  • 连接问题的爆发发生在白天和晚上的不同时间。它们并不总是在高使用率的时候。
  • 我们监控了用户连接数、内存、IO、CPU 使用率等内容……并且没有看到峰值或任何其他可能表明存在问题的情况。
  • 我们已在网络和数据库服务器上安装了wireshark,希望能够发现问题,但没有成功。

问题

  1. 有人对我接下来应该去哪里寻找建议吗?
  2. 数据库的某些属性是否可能导致此问题?
  3. 有什么方法可以更好地“监控”数据库和网络服务器之间的连接吗?
  4. 应用程序端可以做些什么来更好地了解正在发生的情况吗?

应用程序捕获的错误

  • .NET 错误
    • 与 SQL Server 建立连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供程序:命名管道提供程序,错误:40 - 无法打开与 SQL Server 的连接)
    • 超时已过。操作完成之前超时时间已过,或者服务器没有响应。
    • 从服务器接收结果时发生传输级错误。 (提供者:TCP 提供者,错误:0 - 信号量超时期限已过期。)
    • 超时已过。从池中获取连接之前超时时间已过。发生这种情况的原因可能是所有池连接都在使用中并且已达到最大池大小。
  • ColdFusion 错误
    • 执行数据库查询时出错。与主机的 TCP/IP 连接失败。 java.net.ConnectException: 连接超时:连接
      错误发生在第 38 行。
    • 执行数据库查询时出错。连接被对等方重置:套接字写入错误
      错误发生在第 91 行。
    • 执行数据库查询时出错。尝试建立连接超时
      错误发生在第 38 行。

最佳答案

在CF中,我曾经遇到过像你所看到的问题。我在一台服务器上有 CF,在另一台服务器上有 sql 2008 r2。我会看到像您在下面发布的那样的 CF 错误。为了帮助追踪网络错误,我写了这样的内容:

1)创建了一个down.bat

tracert serverip

2) 然后我输入 <cftry><cfcatch>围绕查询。

当查询生成错误时我将执行

<cfexecute name="C:\path\to\down.bat" variable="log" timeout="60" />
<cfmail to="ME" from="Server" subject="SQL DOWN">

Server Debugging Info:
------------------------------------------------------------
#now()#

#cfcatch.Detail#

#cfcatch.Message#

#log#

</cfmail>
</cfexecute>

这帮助我解决了最终成为数据中心硬件的情况。

关于asp.net - 追踪数据库连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13051493/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com