开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

楼主: SoloCat
收起左侧

[易语言纯源码] HPsocket- Disk_BufferPtr磁盘组包 demo

[复制链接]

结帖率:65% (36/55)
 楼主| 发表于 2021-9-26 19:55:59 | 显示全部楼层   河北省石家庄市
LLJ 发表于 2021-9-26 19:47
TCP异步粘包处理
https://bbs.125.la/forum.php?mod=viewthread&tid=14617223
这个永远只缓冲最后一个不 ...

我好像知道你纠结的是什么了。 但是你应该注意一下body事件,多次触发的问题。如果你不自己组body的包。那数据就被HP 给丢掉了。  HPbody不组包的话。是无法完整接受一个完整的图片的。 一旦自己内存组包。内存尺寸。就不可控了。这个是重点。  直接加Q吧。我看你也没留Q 这里交流起来太慢热了。
回复 支持 反对

使用道具 举报

结帖率:65% (36/55)

签到天数: 18 天

 楼主| 发表于 2021-9-26 19:59:25 | 显示全部楼层   河北省石家庄市
LLJ 发表于 2021-9-26 19:47
TCP异步粘包处理
https://bbs.125.la/forum.php?mod=viewthread&tid=14617223
这个永远只缓冲最后一个不 ...

你还是用用HP 再说吧。
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2021-9-26 19:59:42 | 显示全部楼层   广东省汕头市
首先感谢对开源做贡献,我不是不尊重开源,我只是怕别人下载你这个源码一顿乱用,毕竟初学者多,可以不用硬盘缓冲就不用,必须要时再用。
我只是讲述了硬盘缓冲的缺点
回复 支持 反对

使用道具 举报

结帖率:65% (36/55)

签到天数: 18 天

 楼主| 发表于 2021-9-26 20:04:00 | 显示全部楼层   河北省石家庄市
LLJ 发表于 2021-9-26 19:59
首先感谢对开源做贡献,我不是不尊重开源,我只是怕别人下载你这个源码一顿乱用,毕竟初学者多,可以不用硬 ...

嗯。 感谢交流。不过我觉得你的观点还是有点差异。咱们可以加个Q 探讨一下。
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2021-9-26 21:33:18 | 显示全部楼层   广东省汕头市
糖心疼 发表于 2021-9-26 20:04
嗯。 感谢交流。不过我觉得你的观点还是有点差异。咱们可以加个Q 探讨一下。 ...

不方便留Q。
内存缓冲也有个缺点,这需要客户故意攻.击,例如伪造一个很大的包,然后发送一部分数.据就这么挂着不断开连接,让服务器以为包不完整,需要继续等待。正常客户不会执行这种操作。

另外 Nginx、Apache 对于比较频繁访问的静态文件,会保存到内存缓冲,以加速客户访问,要知道内存比硬盘快。
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2021-9-27 02:52:17 | 显示全部楼层   广东省汕头市
https://bbs.125.la/forum.php?mod=viewthread&tid=14595586
这个也是你的吗?Disk_BufferPtr这个名字好,而中文“硬盘组包”会让人误会,
这个用于接收来自客户的包就可以,而“组包”我刚开始还以为是服务器发送给客户的数.据还需要写文件,然后再读文件再发给客户多此一举
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2021-9-27 03:47:43 | 显示全部楼层   广东省汕头市
糖心疼 发表于 2021-9-26 19:35
给你解释一下吧。body事件传输 有一个固定的大小。这个内存空间是复用的。也就意味着如果这个大 ...

也就想讨论一下这方面,不是因为你的代码问题,感谢贡献代码。
这对于固态硬盘有损寿命是真的,机械硬盘随意。也只是提醒来下载源码的。

我知道HTTP基于TCP要考虑分包情况,但我觉得客户会尽快将数.据发过来,从而避免硬盘擦写。
除非很不信任客户,例如他们会以非常慢的速度传输图片。
处理的时候直接在 body事件(也是IOCP的工作线程)处理 ,这样做是因为如果工作量大,那么可以直接卡住所有工作线程,这表示不会再触发 body事件,虽然这样没法接受新用户连接(这时候CPU也可能占用100%),但我相信如果CPU够快,马上就处理完毕,又可以接受新用户了。

以上只是理论,实际测试为准。
内存缓冲也要看算法和写法,不是简单的内存缓冲,算法好了内存占用并不会那么糟糕。
回复 支持 反对

使用道具 举报

结帖率:100% (33/33)

签到天数: 11 天

发表于 2021-9-28 08:45:46 | 显示全部楼层   湖北省襄阳市
很不错的功能,感谢分享
回复 支持 反对

使用道具 举报

签到天数: 22 天

发表于 2021-10-2 04:17:53 | 显示全部楼层   四川省成都市
回复 支持 反对

使用道具 举报

结帖率:94% (15/16)

签到天数: 14 天

发表于 2021-10-7 10:36:47 | 显示全部楼层   广东省深圳市
谢谢分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表