设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 35|回复: 0

为什么我白天把BT种子限制上传到100kb/s时候,比特彗星还是会频繁读写硬盘呢?

[复制链接]
 成长值: 705

签到天数: 4860 天

[LV.Master]伴坛终老

发表于 2025/4/23 19:21 | 显示全部楼层 |阅读模式 |Google Chrome 135.0.0.0|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
为什么我白天把BT种子限制上传到100kb/s时候,比特彗星还是会频繁读写硬盘呢?

因为BT是根据区块读取的,比如说BT其中一个任务是16MB区块,那么产生一次读盘值就是为16MB/s
想要彻底解决限速读盘的问题,应该同时去限制每任务最大连接数为1,避免一个任务有10个人请求区块,那么就会产生16X10 160MB/s的读盘,这没办法避免的,只能去合理的分配更多的磁盘缓存,来避免区块请求到硬盘读,提升缓存命中率到99%,统计页面可以看缓存命中率

可以试试v2.06及后续的新版,优化了一定程度的读盘
v2.06 [Windows] [macOS] 2024.1.18
核心改进:BT任务磁盘缓存达到上限后,分配读缓存失败时,仅按当前上传请求大小真实读取磁盘数据,不再从磁盘一次性读取整个分块的内存数据
核心改进:优化长效做种磁盘缓存,避免一次性从磁盘读取过多数据(内存不足无法分配时加快删除即将过期的缓存以便分配最新的缓存)

或者等后续版本支持用api函数TransmitFile去调度操作系统缓存,这种情况下读取产生就会变小,但是由于缓存不是进程独占,性能和缓存命中率会变低

[发帖际遇]: 小樱 乐于助人,奖励 8 贡献. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2025/4/25 02:17 , Processed in 0.122964 second(s), 20 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

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