我开发了一个SMS服务器,它接收SMS,分析它们并回复消息。该应用程序使用实体框架4.0和SQLServer 2008开发。
当我收到短信时,我会为该消息和分析以及对消息的响应运行新线程。每个线程都有自己的新对象上下文实例,所有线程都在SQL Server中调用相同的存储过程。
但是当大量的SMS到达服务器并且线程数增加时,我每次都会得到以下2个错误之一:
基础提供商失败了 打开。连接成功 与服务器建立,但随后 登录前发生错误 握手。 (提供者:TCP提供者, 错误:0 - 指定的网络名称 已不再可用。)
OR
基础提供商失败了 打开。连接成功 与服务器建立,但随后 登录期间发生错误 处理。 (提供者:TCP提供者, 错误:0 - 指定的网络名称 已不再可用。)
我将Max Pool Size和Connect Timeout增加到400和150。 谁能帮我?? 感谢名单
答案 0 :(得分:1)
您可以尝试在SQL Server中增加超时设置。默认值为10分钟。
http://msdn.microsoft.com/en-us/library/ms189040(v=sql.105).aspx
答案 1 :(得分:1)
可能因为某些连接仍然可用。试着这样做:
sp_configure 'user connections', 0
go
reconfigure with override
同时检查Connections section
中的服务器属性,您的参数:Maximum number of concurrent connections
设置为0(无限制)。
答案 2 :(得分:0)
在我看来,98% 的肯定,因为我最近有同样的经历,这是服务器提供商的网络问题。
例如:如果您从 Ionos 租用服务器,默认情况下所有远程连接都会被阻止,即使您禁用了服务器中的防火墙。您仍然无法远程连接。但是,您可以毫无问题地在服务器上进行工作。
要远程连接,您必须联系服务器提供商。他们将解释如何从您的控制面板启用防火墙端口。
我联系了我的服务器提供商,因为我几乎感到沮丧。 这是他们的回应。
click to see the snapshot of their response
而且,哇!!每个允许的客户端都可以远程连接到服务器。
祝你成功。