求助,C# socket 服务布署到服务器后,显示“远程主机强迫关闭了一个现有的连接”

佛不问苍生 2018-01-22 10:25:35
我用如下方法进行消息接收,在多台win7和win10下布署后测试收发都没有问题。换到服务器上Server 2012,就提示远程主机强迫关闭了一个现有的连接。
把代码复制到服务器上调试,发现连接不稳定,重连,2,3秒后就断开。
在 int len = clientSocket.Receive(receive_buffer); 这里抛出异常。
有哪位大神知道这是什么问题吗?程序身的问题还是服务器有某种规则限制?
服务器的防火墙已经关闭。
wcf服务中,已经配置

//wcf配置
 <binding name="wsBinding" receiveTimeout="00:05:00" sendTimeout="00:02:00"
maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="20000" maxStringContentLength="20000"
maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="20000" />
<security mode="None"/>
</binding>


//socket 接收
private void receiveFruntion()
{
while (true)
{
if (isClosed)
{
break;
}
if (Common.Global.clsGlobalConst.isConnected)
{
try
{
//接收消息
receive_buffer = new byte[4096];
int len = clientSocket.Receive(receive_buffer);
if (len == 0)
{
continue;
}

if (ssV2 != null)
{
ssV2.threadReceiveMsg(receive_buffer);
}
}
catch
{
Common.Global.clsGlobalConst.isConnected = false;
}
}
}
}
...全文
797 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shoppo0505 2018-01-22
  • 打赏
  • 举报
回复
对方端口太忙了吧
佛不问苍生 2018-01-22
  • 打赏
  • 举报
回复
引用 5 楼 xian_wwq 的回复:
[quote=引用 4 楼 a200507002 的回复:] 现在测试是虚拟机有问题,连接就断开。在主机上测试就没有问题。
使用minisniffer等类似工具, 查看数据收发是否正常?[/quote] 应该是虚拟机的问题。 我在两端都用socket工具测试,发现一直在断线重连,断线重连。 换到主机上去测试就没有这个问题。主机连接半个小时了,没有断过。
xian_wwq 2018-01-22
  • 打赏
  • 举报
回复
引用 4 楼 a200507002 的回复:
现在测试是虚拟机有问题,连接就断开。在主机上测试就没有问题。
使用minisniffer等类似工具, 查看数据收发是否正常?
佛不问苍生 2018-01-22
  • 打赏
  • 举报
回复
引用 3 楼 xian_wwq 的回复:
1.需要搞清楚是特定的一台server2012机器上有问题, 还是server2012的服务器上都有问题 2.没有看到解析代码, 解析超时也会导致socket的异常 要提高效率,最好是将数据接收和解析异步化
现在测试是虚拟机有问题,连接就断开。在主机上测试就没有问题。
xian_wwq 2018-01-22
  • 打赏
  • 举报
回复
1.需要搞清楚是特定的一台server2012机器上有问题, 还是server2012的服务器上都有问题 2.没有看到解析代码, 解析超时也会导致socket的异常 要提高效率,最好是将数据接收和解析异步化
佛不问苍生 2018-01-22
  • 打赏
  • 举报
回复
引用 1 楼 shoppo0505 的回复:
对方端口太忙了吧
没有。 我就自己搭建的两个点。 不知道是不是虚拟机的问题。

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧