【发布时间】:2021-06-04 17:51:29
【问题描述】:
我将 Azure Cosmos DB 4.0 与 MongoDB C# Driver 2.10.4 结合使用。
大多数情况下查询都可以正常工作,但我会遇到类似这样的间歇性错误:
MongoDB.Driver.MongoConnectionException:向服务器发送消息时发生异常。 System.IO.IOException:无法将数据写入传输连接:现有连接被远程主机强行关闭。 System.Net.Sockets.SocketException:现有连接被远程主机强行关闭 在 System.Net.Sockets.Socket.BeginSend(... 在 System.Net.Sockets.NetworkStream.BeginWrite --- 内部异常堆栈跟踪结束 --- 在 System.Net.Sockets.NetworkStream.BeginWrite 在 System.Net.Security._SslStream.StartWriting 在 System.Net.Security._SslStream.ProcessWrite 在 System.Net.Security._SslStream.BeginWrite
发生该错误时,调用需要 10-25 秒才能失败。
我正在使用 new MongoClient(MongoClientSettings.FromConnectionString(cnstr)) 构建 MongoClient,并且我正在使用带有这些参数的连接字符串 ?ssl=true&replicaSet=globaldb&retrywrites=false。
我尝试使用 retryWrites=true(根据 Azure 支持建议),但没有帮助。
我尝试了不同的设置,但也没有用(connect=direct、maxIdleTimeMS=30000、serverSelectionTimeout=5000ms、socketTimeout=10000ms)。
是什么导致了这些异常?
【问题讨论】:
标签: mongodb azure azure-cosmosdb