zoukankan      html  css  js  c++  java
  • 网站故障公告2:找到问题的重要线索

    再次向大家致歉!网站故障给您带来麻烦了!请谅解!

    经过分析,确认4月16日下午15:30~18:00的网站故障是由两种类型的System.Data.SqlClient.SqlException (0x80131904)异常引起的。

    一个是System.Data.ProviderBase.DbConnectionPool.GetConnection超时;

    一个是在System.Data.SqlClient.SqlDataReader.Close()时被RDS服务器强迫关闭了TCP连接。

    详细错误信息如下:

    中文版错误信息:

    System.Data.SqlClient.SqlException (0x80131904): Timeout 时间已到。在操作完成之前超时时间已过或服务器未响应。
       在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
       在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
       在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
       在 System.Data.SqlClient.SqlConnection.Open()
       在 NBearLite.Database.CreateConnection(Boolean tryOpenning)
       在 NBearLite.Database.ExecuteReader(DbCommand command)

    System.Data.SqlClient.SqlException (0x80131904): 在从服务器接收结果时发生传输级错误。 (provider: TCP Provider, error: 0 - 远程主机强迫关闭了一个现有的连接。)
       在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
       在 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
       在 System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
       在 System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
       在 System.Data.SqlClient.TdsParserStateObject.ReadByte()
       在 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       在 System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
       在 System.Data.SqlClient.SqlDataReader.Close()

    英文版错误信息:

    System.Data.SqlClient.SqlException (0x80131904): Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
       at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
       at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
       at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
       at System.Data.SqlClient.SqlConnection.Open()
       at NBearLite.Database.CreateConnection(Boolean tryOpenning)

    System.Data.SqlClient.SqlException (0x80131904): A transport-level error has occurred when receiving results from the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.)
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
       at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
       at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error)
       at System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj)
       at System.Data.SqlClient.TdsParserStateObject.ReadNetworkPacket()
       at System.Data.SqlClient.TdsParserStateObject.ReadByte()
       at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
       at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
       at System.Data.SqlClient.SqlDataReader.Close()

    对于这两中类型的异常,有两个可能的原因:

    1. 达到了RDS最大数据库连接数限制,但当时的监测数据并没有显示出这种情况。(对于这个可能的原因已经采取了措施)

    2. 云服务器与RDS之间的网络存在问题。(阿里云明天会进一步排查这个问题)

    3. RDS的数据库镜像引起的。(详见网站故障公告3:应该找到了问题的真正原因

    不管是哪个原因,明天都会有办法应对。

    相关博文:

    网站故障公告1:使用阿里云RDS之后一个让人欲哭无泪的下午

    网站故障公告3:应该找到了问题的真正原因

  • 相关阅读:
    Intel x86
    FPGA自计数六位共阳极数码管动态显示2(调用task的方法)
    FPGA六位共阳极数码管动态显示
    运算放大器是模拟电路的基石,模拟电路设计
    这样讲你就懂了!大牛给你介绍《信号与系统》
    电容计算公式
    fork...join的用法
    芯片电源管脚的去耦电容究竟要用多大的?
    Blog Contents
    linux grep 命令常见用法
  • 原文地址:https://www.cnblogs.com/cmt/p/3025231.html
Copyright © 2011-2022 走看看