弃用 Electron、4GB 内存占用直接砍到 290MB!Discord 宣布用 Rust 重写客户端
BestBlog编程类文章 · 软件开发
📌 一句话摘要 Discord 宣布弃用 Electron,采用 Rust 重写客户端,内存占用从 4GB 降至 290MB,展示了原生技术在降低桌面应用资源消耗方面的显著优势。 📝 详细摘要 Discord 联合创始人兼 CTO Stanislav Vishnevskiy 在 X 上公开展示了正在开发的全新桌面客户端「Discord Phoenix」。该客户端将完全使用 Rust 语言重写,界面框架采用 GPUI,显著降低了内存占用。截图显示,新客户端仅占用 290.2MB 内存,而当前基于 Electron 的版本在闲置时即可占用 1-2GB,极端情况下甚至达到 4GB。文章详细阐述了 Electron 框架的工作原理及其资源消耗问题,解释了为何使用自带 Chromium 内核的 Electron 应用会导致高内存占用。同时介绍了 Rust 作为系统编程语言的优势,包括内存安全和编译为原生机器代码的特性。文章还提到,Discord 已在 2025 年 12 月测试过自动重启机制以应对内存超 4GB 的情况,这次重构则是从架构层面解决根本问题。除 Discord 外,微软 Teams 和 Slack 也曾针对 Electron 的资源问题进行过优化。最后讨论了 Electron 的跨平台开发优势与资源消耗之间的权衡,以及 Tauri 等替代方案的潜力。 💡 主要观点 Discord 全新客户端采用 Rust+GPUI 重写,内存占用从 4GB 降至 290MB 通过摆脱 Electron 自带的 Chromium 浏览器内核,避免了运行完整浏览器环境的资源开销,显著提升了应用性能。 Electron 框架的资源消耗问题已成为大型桌面应用的痛点 Electron 应用通常需要携带完整的 Chromium 内核,即使处于闲置状态也可能占用 1-2GB 内存,极端情况下可达 4GB,导致用户设备负担加重。 Rust 作为系统编程语言在桌面应用开发中的优势 Rust 具备内存安全等特性,能够编译为原生机器代码,配合 GPUI 等原生 UI 框架,可实现高性能、低资源消耗的桌面应用。 行业内多家公司已针对 Electron 资源问题进行优化 微软 Teams 曾用 WebView2 替换 Electron,内存使用降低 50%;Slack 在 2017 年调整架构后显著降低内存占用,显示出 Electron 问题已具行业影响力。 Electron 的跨平台开发优势与资源消耗之间的权衡 Electron 允许使用 Web 技术开发跨平台应用,降低了开发成本,但代价是高资源消耗;而原生开发虽性能更好,但需要为每个平台分别构建 UI。 💬 文章金句 内存价格疯涨,软件开发商也开始想办法给用户的电脑「减负」了。 Discord 目前的 Windows 客户端即使处于闲置状态,也可能占用 1~2GB 内存,某些情况下甚至会飙升至 4GB。 新客户端的资源占用表现已经相当令人期待。 Electron 应用通常会自带一套 Chromium 浏览器内核。 Rust 是一门能够编译为原生机器代码的系统编程语言,具备内存安全等特性。 📊 文章信息 AI 初评: 85 来源: CSDN 作者: CSDN 分类: 软件编程 语言: 中文 阅读时间: 13 分钟 字数: 3235 标签: 编程与工程 , 开发者工具 , 后端开发 , 编程语言 , Rust 阅读完整文章