精易论坛

标题: 【Mark】关于通讯服务端(HPSocket)异常闪退和卡死的分析 [打印本页]

作者: 外星人群控    时间: 2024-9-18 04:03
标题: 【Mark】关于通讯服务端(HPSocket)异常闪退和卡死的分析
本帖最后由 外星人群控 于 2024-9-18 04:21 编辑

关于通讯服务端(HPSocket)异常闪退和卡死的分析


根据外星人安卓群控(xx脚本)挂机过程中,


    1. 手机端上线超过600台
    2. 运行3-12小时,信息处理500万-1千万条

就会经常出现:信息线程池阻塞,手机端批量下线,主程序假死无响应的情况.


之前猜测的原因:


    1.线程中频繁操作组件(超级列表框_设备)
    2.并发操作数据库,造成死锁,返回数据慢,线程阻塞卡死
    3.主程序和DLL插件高并发交互,内存溢出(概率小)

现在经过E5联盟机房系统的服务端测试,重新发现可能是以下的原因,概率很大,还在测试中。


    1.在初始化绑定监听器之前,未设置通信数据缓冲区大小和其他微调


设置前后的效果对比:


    1.外星人安卓群控,1秒处理500条信息
    2.E5联盟机房系统,1秒处理1700条信息

压测过程中,资源占用情况:


    1.客户端从4.6万掉线到3.5万(客户端问题)
    2.运行8个小时,稳定50线程处理信息5千万条
    3.内存占用稳定(630MB)
    4.句柄使用正常(8.6万)
    5.CPU占用稳定30-50%
    6.以太网发送:600Kbps-4.2Mbps
    7.以太网接收:300Kbps-2.5Mbps

压测运行图












作者: 冷渣渣    时间: 2024-9-18 09:45
等待后续结果
作者: 剧终0616    时间: 2024-9-18 09:47
红框那里是不是越多越好,这样就可以保证客户Duan的连接数可以越多
作者: 遗失的眼泪    时间: 2024-9-18 10:46
你这个数据量频繁操作超级列表框,可以用虚表了。
我以前做过测试,多条线程频繁用标签反馈来操作超级列表框会造成闪退情况,因为超级列表框不能频繁操作,就算你用标签反馈也不行。

作者: 亿意亦易    时间: 2024-9-18 11:34

等待后续结果
作者: 外星人群控    时间: 2024-9-18 12:37
遗失的眼泪 发表于 2024-9-18 10:46
你这个数据量频繁操作超级列表框,可以用虚表了。
我以前做过测试,多条线程频繁用标签反馈来操作超级列表 ...

我尝试用精易魔改的超级列表组件,估计是我写法不对,调试也闪退。续表的话没试过,可以推荐一下用哪个吗?
作者: 外星人群控    时间: 2024-9-18 12:39
剧终0616 发表于 2024-9-18 09:47
红框那里是不是越多越好,这样就可以保证客户Duan的连接数可以越多

我也是乱写的数量,因为我没有找到HP关于那个红框命令参数的解释,你有这方面的资料吗?
作者: wlp    时间: 2024-9-18 13:05
说了又不听,HP的大部分易语言模块的封装都是垃圾,各种汇编,直接调用HPSocket4C
作者: 万古一念间    时间: 2024-9-18 13:36
wlp 发表于 2024-9-18 13:05
说了又不听,HP的大部分易语言模块的封装都是垃圾,各种汇编,直接调用HPSocket4C ...

我顶你 汇编我是看不懂
作者: 万古一念间    时间: 2024-9-18 13:37
遗失的眼泪 发表于 2024-9-18 10:46
你这个数据量频繁操作超级列表框,可以用虚表了。
我以前做过测试,多条线程频繁用标签反馈来操作超级列表 ...

有没有可能,他是1秒更新一次数据。 我一般爱这样写,每秒更新下
作者: mywjt    时间: 2024-9-23 14:25

等待后续结果
作者: djdjdj69    时间: 2024-11-12 17:40
高级表格很稳定,速度很快




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4