设为首页收藏本站

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

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 280|回复: 1

Windows下还没有什么有效方案充分发挥出BT种子下载给资源任务加速10Gbps做种上传宽带的服务器,因为是单线程软件只能吃单核心,反而Linux可以多进程实现

[复制链接]

签到天数: 4493 天

[LV.Master]伴坛终老

发表于 2024/2/26 03:51 | 显示全部楼层 |阅读模式 |Google Chrome 122.0.0.0|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
Windows下还没有什么有效方案充分发挥出BT种子下载给资源任务加速10Gbps做种上传宽带的服务器,因为是单线程软件只能吃单核心,反而Linux可以多进程实现

用世界上最先进纳米制作工艺,性能在强的CPU软件都容易卡住,因为是单核心工作的,八核心就占用12%然后界面一卡一卡
1.png

2.png

咱们比特彗星软件什么时候开始优化CPU多核心呢,已经很久了,如果之前说的那套类似http server的多线程处理方案不好做的话,可以考虑多进程模式

比如chrome浏览器,也是每个标签一个新进程,多进程模式也是一种有效利用多核心CPU的解决方案

比特彗星软件可以只当界面框架来显示下载进程的数据
检测CPU线程数,4核8线程就启动8个新进程,用作下载,高级设置可单独配置进程数量,默认自动检测核心线程数,和单独配置每个进程的磁盘缓存大小和端口号,便于每个进程都可以打通TCP端口公网ip
比如使用加1方案开发和使用起来比较方便,比特彗星端口设置10000,那么下载进程1端口就是10000,下载进程2端口就是10001以此类推,然后其它TCP发起连接总数,dht和tracker等设置就遵守软件本身设置,每个下载进程的BT身份识别信息中的客户端id最好要一致,避免PT任务会统计到使用多个客户端情况(peerid附带的信息,和两个peer建立后识别对方的id)

然后在比特彗星主界面添加任务,任务自动下发给这些下载子进程,例如服务器是256个CPU核心,添加10w个BT任务,每个下载进程大约分配到400个下载任务,这样多核CPU可以成功利用上,不然只能跑一个核心太憋屈了,Linux服务器下倒是能够使用其它软件实现这个效果,例如多开docker,写个sh脚本把BT任务分别录入到每个docker中,但是Windows下希望能解决下,目前市面上还没有任何BT软件做到多核心处理,希望比特彗星能够超弦绝杀

虽然Windows下可以用web种子去实现高性能,但是很多下载者的客户端可能不太兼容这个bt协议,例如迅雷11版本就会去除任务元数据中的web信息,导致无法使用web种子,所以还是要在bt本身去实现多核心利用


https://bbs.itzmx.com/thread-100031-1-1.html

https://bbs.itzmx.com/thread-100048-1-1.html

欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 409 天

[LV.9]以坛为家II

发表于 2024/2/26 13:17 | 显示全部楼层 |Google Chrome 109.0.0.0|Windows 10
后端多开,然后用一个前端统一管理?
顺便给不同的后端分配不同的IP也做一下,到时候一个后端走一条网线。
[发帖际遇]: smilesadness 被钱袋砸中进医院,看病花了 2 樱币. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024/4/23 03:25 , Processed in 0.163355 second(s), 21 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

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