精易论坛

标题: HPSocket高效传输,自动分包组包 [打印本页]

作者: BUG508    时间: 2021-8-22 13:11
标题: HPSocket高效传输,自动分包组包
本帖最后由 BUG508 于 2021-8-22 13:15 编辑

HPSocket的高效传输


开源一份HPSocket的tcp的高效传输方案,自动组包分包,我精简了HPSocket4C.dll文件删除了所有的代理,http,udp等等一大堆的东西,dll文件又经过upx压缩仅80kb大小,只保留tcp pack部分

pack本来就是可靠传输,一般不需要单独处理粘包,只要发送的数据在4mb大小以内,完全不需要担心,所以我就使用了切片,单次发送1mb大小的数据

同时使用的易语言自带的 打开内存文件方法来进行组包,之前也咨询了论坛打开内存文件的方法可以存储一个G的文件,但是我们可能也用不到那么大,最多也就几百mb我估计就够用了

可能我的分包组包不是最高效的,但是内存方面肯定是最稳定的(单次发包数据超过200mb,当我没说这句话),现在开源全部源码,如果有大佬有更佳的方案,内存占用少的方法,欢迎告知学习
ps:理论上是支持高并发的,但是我没有测试,我也没有那么多用户,欢迎各位走过路过的大佬测试

效果图.png (161.74 KB, 下载次数: 68)

效果图.png

QQ截图.png (24.2 KB, 下载次数: 78)

精简了HPSocket4C的dll文件仅仅80kb

精简了HPSocket4C的dll文件仅仅80kb

HPSocket4C.zip

272.39 KB, 下载次数: 2274, 下载积分: 精币 -2 枚


作者: Tacituenknight    时间: 2021-8-22 14:25
支持支持
作者: 欧青辣少    时间: 2021-8-22 14:34
好例子拿走了
作者: fyh505099    时间: 2021-8-22 14:39
感谢分享 看看学习学习
作者: 我們還太嫩    时间: 2021-8-22 14:48

作者: tian89    时间: 2021-8-22 14:55
你说的问题是很矛盾的内存就那么点一客户就要1MB,并发是同事需要分配那多个MB所以说并发是很难的
作者: 王东林    时间: 2021-8-22 15:28
好东西。谢谢分享
作者: y2j423633    时间: 2021-8-22 15:30
欢迎各位走过路过的大佬测试
作者: 曜辉    时间: 2021-8-22 16:25
厉害了的说,程序稳定真的是很重要的说!
作者: 竭诚软件    时间: 2021-8-22 17:17
好东西。谢谢分享
作者: JYYeah    时间: 2021-8-22 18:01

厉害了的说,程序稳定真的是很重要的说!
作者: zytlj    时间: 2021-8-22 18:04
谢谢分享。
作者: Conquer    时间: 2021-8-22 18:20
厉害了的说,程序稳定真的是很重要的说!
作者: kantal    时间: 2021-8-22 19:02
厉害了的说,程序稳定真的是很重要的说!~
作者: shj0205    时间: 2021-8-22 19:35
感谢分享
作者: 灵海雪缘    时间: 2021-8-22 20:45
HPSocket高效传输,自动分包组包
作者: 杰西卡技术传媒    时间: 2021-8-22 20:50
厉害了的说,程序稳定真的是很重要的说!~
作者: gaoqing    时间: 2021-8-22 21:33
下载研究下谢谢
作者: menghan    时间: 2021-8-22 21:40
感谢楼主分享,支持一下~~
作者: yuxuanju    时间: 2021-8-22 21:57
模块未开源。
作者: qq2518    时间: 2021-8-22 23:39
感谢楼主分享、学习一下
作者: 信念    时间: 2021-8-23 08:39
33333333333333333333
作者: 信念    时间: 2021-8-23 08:42
直接发送1M分包数据?
作者: 指尖流淌    时间: 2021-8-23 09:52
谢谢分享
作者: kyo9766    时间: 2021-8-23 10:33
学习一下 HP,感谢分享
作者: 糖太粽    时间: 2021-8-23 11:14
感谢分享
作者: sd3970566    时间: 2021-8-23 11:56
整做个局域网传文件夹一样的范例吗?  
作者: BUG508    时间: 2021-8-23 12:16
信念 发表于 2021-8-23 08:42
直接发送1M分包数据?

类回调里面进行的切片发送,比如100mb文件就会发送100次,创建的回调里面只会回调一次
作者: BUG508    时间: 2021-8-23 12:21
tian89 发表于 2021-8-22 14:55
你说的问题是很矛盾的内存就那么点一客户就要1MB,并发是同事需要分配那多个MB所以说并发是很难的 ...

我说的理论并发,采用的是一条传输创建一个内存文件,传输完毕就会释放那个文件,只是根据文件号来组合不同的包数据,组合完就会释放那个数据文件,并不会多占用内存,模块源码里面类回调里可以看到方法
作者: 外星星人    时间: 2021-8-23 12:50
需要这个 支持
作者: cc66029    时间: 2021-8-23 14:20
牛逼,感谢楼主分享
作者: 灵感吖    时间: 2021-8-23 15:39
        此处应该有鼓励~
作者: AK48    时间: 2021-8-23 16:48

感谢分享
作者: y2j423633    时间: 2021-8-23 16:59
挺好的,收藏学习
作者: qxuem    时间: 2021-8-23 20:03
看看是不是全开源
作者: qxuem    时间: 2021-8-23 20:09
确实有模块没开源
作者: yuxuanju    时间: 2021-8-23 20:58
楼主的疼讯号是多少?
作者: yuxuanju    时间: 2021-8-23 21:09
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等编程语言接口。HP-Socket 对通信层实现完全封装,应用程序不必关注通信层的任何细节;HP-Socket 提供基于事件通知模型的 API 接口,能非常简单高效地整合到新旧应用程序中。

* HP-Socket 官方网站:http://www.jessma.org
* HP-Socket 项目主页:http://www.oschina.net/p/hp-socket  
* HP-Socket 开发文档:http://www.oschina.net/p/hp-socket/doc
* HP-Socket QQ Group:75375912, 44636872

HP-Socket 发行版 - 码云 Gitee.com  https://gitee.com/ldcsaa/HP-Socket/releases
作者: yuxuanju    时间: 2021-8-23 21:13
y2j423633 发表于 2021-8-22 15:30
欢迎各位走过路过的大佬测试

你搭建一个服务器,让大家压力测试下。
作者: 布鲁惠斯    时间: 2021-8-23 22:08
新技能已get√
作者: y2j423633    时间: 2021-8-24 09:12
yuxuanju 发表于 2021-8-23 21:09
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用 ...

你搭建一个服务器,让大家压力测试下。
作者: 8wy721719    时间: 2021-8-24 10:20
        新技能已get√
作者: gaoqing    时间: 2021-8-24 12:10
支持 感谢分享
作者: seven7c    时间: 2021-8-24 12:27
服务端向客户Duan发信息 好像不行
作者: BUG508    时间: 2021-8-24 20:30
seven7c 发表于 2021-8-24 12:27
服务端向客户Duan发信息 好像不行

根据服务端例子 那个按钮旁边那个编辑框(填客户ID)来发数据的
作者: zxcm1231    时间: 2021-8-24 21:54
多谢分享
作者: qq420345437    时间: 2021-8-25 04:02
加L_会不会更稳。。。哈哈
作者: 信念    时间: 2021-8-25 11:23
BUG508 发表于 2021-8-24 20:30
根据服务端例子 那个按钮旁边那个编辑框(填客户ID)来发数据的

期待再次更新
作者: apanya    时间: 2021-8-25 16:25

新技能已get√

作者: 宫廷程序猿    时间: 2021-8-25 17:35
测试了一下,服务器给客户Duan发消息,崩溃了
作者: CUTEGIRL    时间: 2021-8-25 19:05
6666666666666666666666
作者: jsxy    时间: 2021-8-26 05:26
sd3970566 发表于 2021-8-23 11:56
整做个局域网传文件夹一样的范例吗?

压缩包压缩、解压
作者: f100long    时间: 2021-8-26 20:50
努力学习天天向上
作者: yuxuanju    时间: 2021-8-26 21:42
2021-08-26_21-42-28_大力支持楼主,感谢分享。
作者: 浅蓝色丨泪    时间: 2021-8-27 02:25
本帖最后由 浅蓝色丨泪 于 2021-8-27 11:08 编辑

HPSocket4C模块源码.e (99.86 KB, 下载次数: 158)

服务器给客户Duan发消息,会崩溃,已解决
作者: yuxuanju    时间: 2021-8-27 11:31
这个好,感谢。
作者: w3516330    时间: 2021-8-27 16:18
支持开源~!感谢分享
作者: a1048283132    时间: 2021-8-27 23:00
正好需要
作者: lcylpzls    时间: 2021-8-28 00:24
感谢楼主开源分享
作者: yuxuanju    时间: 2021-8-28 00:36
5.8.5版很快就要发布了,期待楼主。
作者: 大小鱼    时间: 2021-8-28 11:46
支持开源~!感谢分享
作者: fasdfasfa    时间: 2021-8-28 11:46
可以发送超大文件么
作者: 啦啦啦呼呼呼    时间: 2021-8-29 11:15
感谢楼主开源分享
作者: 绽放青春    时间: 2021-8-29 18:55
这个功能已经被我发扬光大了  ,支持批量最多2000个文件同时传,测试5GB以上 正常传输。  
作者: 凉忆亦凉心    时间: 2021-8-31 01:00
谢谢分享来看看
作者: lyq3255489    时间: 2021-8-31 14:31
绽放青春 发表于 2021-8-29 18:55
这个功能已经被我发扬光大了  ,支持批量最多2000个文件同时传,测试5GB以上 正常传输。   ...

分享一下啊 老铁
作者: Z隐    时间: 2021-9-1 13:57
支持开源~!感谢分享
作者: xxins    时间: 2021-9-1 20:19
支持开源
作者: yuxuanju    时间: 2021-9-7 18:06
忆下载学习,感谢楼主奉献
作者: 坤哥123cd    时间: 2021-9-10 15:35
感谢无私贡献出来,
作者: 专一    时间: 2021-9-10 16:02
        新技能已get√
作者: 阿顺    时间: 2021-9-10 17:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 15339587789    时间: 2021-9-10 19:03
牛X牛X牛X牛X牛X牛X牛X牛X牛X牛X牛X牛X
作者: sdhags    时间: 2021-9-11 09:02
谢谢楼主分享...
作者: 倌人安好    时间: 2021-9-13 20:12
111
作者: xjdgs    时间: 2021-9-13 22:34

支持开源~!感谢分享
作者: yuxuanju    时间: 2021-9-14 15:59
客户Duan是通用的吗?还是专用。
作者: 北冥    时间: 2021-9-15 20:32
大佬你这个我测试没法再服务器上启动服务
作者: ljwqdm    时间: 2021-9-21 13:31
希望是好东西我用得上
作者: Dream文    时间: 2021-10-1 20:31
666666666666666666
作者: wyc666    时间: 2021-10-2 15:36
发的发送到发送到
作者: wyc666    时间: 2021-10-2 15:37
撒大声地撒多撒多所
作者: xiaoxiao2    时间: 2021-10-2 15:54
感谢分享!
作者: 果心豆腐酱    时间: 2021-10-3 11:38
大佬流弊
作者: 15339587789    时间: 2021-10-4 16:10
牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛牛啊牛
作者: MrSean    时间: 2021-10-9 12:35
        新技能已get√
作者: 果心豆腐酱    时间: 2021-10-9 16:34
我经常出现分配239537字节内存失败。。搞不懂是为什么
作者: 淡雅    时间: 2021-10-9 20:10
谢谢大佬正好需要
作者: xiguapihenpi    时间: 2021-10-15 23:26
新技能已get√

作者: JYYeah    时间: 2021-10-16 23:21
新技能已get√
作者: 木可儿    时间: 2021-10-17 01:34

努力学习天天向上
作者: lm88818    时间: 2021-10-20 11:31
支持开源~!感谢分享
作者: XD看看    时间: 2021-10-23 16:56
dsadsadsadsadsadsa
作者: XD看看    时间: 2021-10-23 16:56
sadsadsadsad
作者: XD看看    时间: 2021-10-23 16:56
sadsadsadsad
作者: 674414869    时间: 2021-10-24 14:00
。。。。。。
作者: qmdqaq333    时间: 2021-10-27 20:55
支持开源
作者: Dhs过客    时间: 2021-10-28 11:20
支持下
作者: 果心豆腐酱    时间: 2021-11-3 12:07
大佬,你这个HP每天都出现内存分配错误啊
作者: BUG508    时间: 2021-11-26 18:36
果心豆腐酱 发表于 2021-11-3 12:07
大佬,你这个HP每天都出现内存分配错误啊

那是因为多线程发送数据的时候,你在数据读入进来了,但是hp本身的发送线程并没有处理完毕,造成读入的越来越多,hp的内部堆积也越来越多,最后出现内存分配错误




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