TServerSocket 运行10-30天左右,TClientSocket就连不上,必须重启ServerSocket.

tsp3ng 2009-07-12 11:16:50
本人有一个程序用ServerSocket作为在线审核服务器, 最高峰时同时会有60个客户端连上去,
均采用异步通信,但服务端运行10-30天,客户端就没有办法连上去,必须启动ServerSocket服务端.
由于不好测试,同时5个同事曾每人每次发2万张单据,测了一天,都没有出现这样的现象, 一直未能测试去真正的原因。
请大家能帮分析原因. 在些感激不尽。
...全文
206 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
znj_326 2009-07-23
  • 打赏
  • 举报
回复
最简单就是每隔一段时间去检查没有没死连接,如果有就Kill,
tsp3ng 2009-07-23
  • 打赏
  • 举报
回复
复于:2009-07-21 11:15:28死连接太多,端口耗尽了,其实网上有解决方法,你找找
-》怎么测试端口耗尽了,网上有解决方法吗?

只能记录日志, 或者每一句代码彻底的分析, 觉得应该不会在serversocket上
-> 能不能检查到每一时刻(例如每分钟)serversocket挂了多少个clientsocket

关键的步骤都应该打上日志,像连接、断开、异常等等,通过日志比较好判断,不然没依据很难处理的。
顺便问下楼住,可户端连不上是报什么错误啊?
—> 客户端连不上,10061,


1 控件自身的问题,INDY本身就不稳定。
2 操作系统撑不住,建议装win2003要好一些
3 如果一定要用SOCKEY 建议不用INDY 的控件,直接用API,这样要稳定的多
->用是Tserversocket 服务用的是win2003 且是专用IBM服务器 数据库是sql 2005

4 装一个CodeSite v2.0 出错了会保存日志,说明哪里错了,还何以给你发邮件,很方便,强烈建议
-> 这个我到网上找一下。

谢谢大家!





尘风四海 2009-07-22
  • 打赏
  • 举报
回复
关注一下,最近要做这方面的开发
znj_326 2009-07-21
  • 打赏
  • 举报
回复
死连接太多,端口耗尽了,其实网上有解决方法,你找找
xjwy 2009-07-21
  • 打赏
  • 举报
回复
4 装一个CodeSite v2.0 出错了会保存日志,说明哪里错了,还何以给你发邮件,很方便,强烈建议
xjwy 2009-07-21
  • 打赏
  • 举报
回复
1 控件自身的问题,INDY本身就不稳定。
2 操作系统撑不住,建议装win2003要好一些
3 如果一定要用SOCKEY 建议不用INDY 的控件,直接用API,这样要稳定的多
beiguofengguang 2009-07-21
  • 打赏
  • 举报
回复
关键的步骤都应该打上日志,像连接、断开、异常等等,通过日志比较好判断,不然没依据很难处理的。
顺便问下楼住,可户端连不上是报什么错误啊?
RAISEEXCEPTION 2009-07-21
  • 打赏
  • 举报
回复
关注
aistudies 2009-07-21
  • 打赏
  • 举报
回复
只能记录日志, 或者每一句代码彻底的分析, 觉得应该不会在serversocket上
InceptKnowledge 2009-07-19
  • 打赏
  • 举报
回复
搞个日志,把一些你认为敏感的,容易犯错的,尤其是处理数据的地方,记录一下日志,到时分析
eyoue 2009-07-18
  • 打赏
  • 举报
回复
应该是内存有泄漏,是源码有问题的
tsp3ng 2009-07-18
  • 打赏
  • 举报
回复
用的delphi6, 估计原因是内存泄漏。但有没有能自动检查出哪些内存泄漏的工具?
ahjoe 2009-07-18
  • 打赏
  • 举报
回复
我猜是端口耗尽了
cncharles 2009-07-18
  • 打赏
  • 举报
回复
是不是用了GetTickCout之类的函数, integer 溢出
周药师 2009-07-17
  • 打赏
  • 举报
回复
关注
newfang 2009-07-17
  • 打赏
  • 举报
回复
是不是时间长有什么数据溢出了?

我记得原来用GettickCount的时候,就会出现数据溢出的问题~~~
ysai 2009-07-17
  • 打赏
  • 举报
回复
用的什么版本DELPHI带的?
可以试试用高版本的ServerSocket服务程序,D7带的有时候出问题
tsp3ng 2009-07-16
  • 打赏
  • 举报
回复
总得想办法去解决这个问题,找出真正的原因,不然的话,客户不肯结案。
tsp3ng 2009-07-16
  • 打赏
  • 举报
回复
用udp组件吧,tcp的问题多多啊,不好调试容易出错

UDP组件比Socet 稳定吗?
yjytiantang 2009-07-15
  • 打赏
  • 举报
回复
这个问题遇到过,很难判断是在什么时间断的。。
偶然性很大。。至今也没仔细的去研究过是什么问题。。
加载更多回复(4)

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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