FluxDown是一款免费的多协议下载管理器,支持HTTP多线程、BT、磁力链接、HLS等协议,定位为IDM的替代品。该项目日前宣布桌面端界面从Flutter迁移至GPUI,即Zed编辑器所使用的Rust UI框架。迁移原因主要有三点:其一,原架构中Rust下载引擎与Flutter界面需通过FFI跨语言通信,每新增功能都要在Rust和Dart两侧各写一遍代码并生成绑定,维护成本高;其二,界面与引擎运行在同一进程,界面故障会直接影响下载任务;其三,下载器需要常驻后台,界面进程无需占用额外内存等资源。迁移后,桌面端拆分为三个进程:fluxdown-desktop负责GPUI界面渲染;fluxdown-agent常驻后台,承担托盘、账户、云同步和设备协同功能;fluxdownd是纯下载核心。关闭窗口后界面进程直接退出,下载由后台核心继续执行,界面崩溃也不会拖垮正在进行的任务。进程之间通过本机JSON-RPC通信并相互鉴权。此外,NAS或服务器上可单独运行fluxdown-agent与fluxdownd,通过浏览器访问内置Web页面进行管理,与桌面端共用同一套核心和接口,无需另行维护服务端版本。项目官网和GitHub仓库已开放,作者表示后续将推进移动端和浏览器插件的更新,欢迎用户试用反馈。
事件分析
核心观点:GPUI走出Zed生态被第三方采用,标志Rust GUI框架走向成熟,全Rust技术栈正重塑桌面工具软件的开发范式。
原文链接:V2EX 分享发现

评论前必须登录!
立即登录 注册