• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

使用个推C#SDK后服务器出现大量端口显示为CLOSE_WAIT

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

问题起因

象往常一样登录下APP,结果提示服务器端接口错误。吓得我赶紧上服务器上看看。

 

第一步:检查原因

因为只要服务器出错,后台会通过Log4net记录错误日志,看看日志怎么说。

 

关键字是“超出本地计算机网络适配器卡的名称限制”,google一下,大概意思是本地端口被占用完了。不能响应了。

 

第二步:检查下端口占用,打开cmd,输入“netstat -an”查看下端口占用。

超级多的本地端口被打开,状态为CLOSE_WAIT。对方的端口搜索了下,没有明显发现是哪家公司,但是就是这固定的2-3个IP地址。

 

第三步:netstat -an没有显示具体是那个进程占用的。下载一个TCPView看看试试

发现是进程ID为59872的进程占用的。

 

第四步:打开任务管理器,显示PID。

发现是一个IIS站点占用的,而且这个站点没有做任何事,只做推送。推送用的xx公司推送的SDK(就事论事,不说公司)。加上上面的IP地址访问后提示“没有正确的查找到Json接口”

几乎可以确定是xx公司推送SDK的问题。

 

回想一下,这个网站是做推送用的,当另外的站点调用这个站点做推送的时候,xx公司推送SDK提交一个http请求,但是没有释放。一直占用了这个端口。下一次推送又占用一个,一直到端口占用完毕。

 

解决:

第一步:先重启IIS,果然端口不占用了,访问也恢复正常了。

第二步:与xx公司技术支持人员联系,修改SDK。虽然回馈还算及时,但是最终的结果是没有很好的办法。

好吧,推送已经集成到了APP,不能轻易变动。只好把服务器的推送SDK从C#版本改成RestAPI了。改成RestAPI之后问题解决,也从侧面佐证了应该是C# SDK的问题。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#导出数据至CSV发布时间:2022-07-13
下一篇:
C#对象深拷贝发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap