在尝试将文档写入我的集合时,偶尔会抛出以下异常。
我正在使用mLabs中托管的MongoDB 3.0.7。我们的应用程序托管在Azure(作为Web应用程序),我使用的是C#2.2.3 SDK。
MongoDB.Driver.MongoConnectionException:发生异常时 打开与服务器的连接。 ---> System.Net.Sockets.SocketException:试图访问a 套接字以其访问权限禁止的方式 System.Net.Sockets.Socket.Connect(IPAddress []地址,Int32端口)191.235.xxx.xxx:54128
在System.Net.Sockets.Socket.Connect(String host,Int32 port)at MongoDB.Driver.Core.Connections.TcpStreamFactory.Connect(插座 socket,EndPoint endPoint,CancellationToken cancellationToken)at MongoDB.Driver.Core.Connections.TcpStreamFactory.CreateStream(端点 endPoint,CancellationToken cancellationToken)at MongoDB.Driver.Core.Connections.BinaryConnection.OpenHelper(的CancellationToken cancellationToken)---内部异常堆栈跟踪结束--- at MongoDB.Driver.Core.Connections.BinaryConnection.OpenHelper(的CancellationToken cancelToken) MongoDB.Driver.Core.Connections.BinaryConnection.Open(的CancellationToken cancelToken) MongoDB.Driver.Core.ConnectionPools.ExclusiveConnectionPool.AcquiredConnection.Open(的CancellationToken cancelToken) MongoDB.Driver.Core.Servers.ClusterableServer.GetChannel(的CancellationToken cancelToken) MongoDB.Driver.Core.Bindings.ServerChannelSource.GetChannel(的CancellationToken cancelToken) MongoDB.Driver.Core.Bindings.ChannelSourceHandle.GetChannel(的CancellationToken cancelToken) MongoDB.Driver.Core.Operations.BulkMixedWriteOperation.Execute(IWriteBinding binding,CancellationToken cancellationToken)at MongoDB.Driver.OperationExecutor.ExecuteWriteOperation [TResult](IWriteBinding 绑定,IWriteOperation' 1操作,CancellationToken cancelToken) MongoDB.Driver.MongoCollectionImpl' 1.ExecuteWriteOperation [TResult](IWriteOperation`1 operation,CancellationToken cancellationToken)at MongoDB.Driver.MongoCollectionImpl' 1.BulkWrite(IEnumerable' 1个请求, BulkWriteOptions选项,CancellationToken cancellationToken)at MongoDB.Driver.MongoCollectionBase' 1.InsertOne(TDocument文档, InsertOneOptions选项,CancellationToken cancellationToken)
答案 0 :(得分:2)
如果您达到沙箱限制,就会发生这种情况。我的旧答案Intermittent crashes in Azure Web Application
中有更多详情要了解沙盒限制,请参阅https://github.com/projectkudu/kudu/wiki/Azure-Web-App-sandbox
还遇到了http://www.freekpaans.nl/2015/08/starving-outgoing-connections-on-windows-azure-web-sites/,这篇文章很好地写在同一主题上
编辑 - 2018年2月
如果您现在正在解决此问题,请转到 Azure门户中的诊断并解决刀片,并检查 TCP连接强>瓦片。它应该为您提供有关使用最大端口的站点的信息,并允许您监视实例范围内的状态连接。