返回文章列表

Electron 桌面客户端架构复盘

复盘 Electron 桌面应用的进程模型、自动更新、Vite 构建优化与多平台打包发布的完整过程。

项目背景

团队需要将 Web 管理后台封装为桌面客户端,支持 Windows/macOS,离线缓存、系统通知、自动更新。

核心难点

  • 渲染进程内存泄漏(DevTools 打开 24h 后 800MB+)
  • 自动更新的增量下载与回滚
  • Vite + Electron 双构建配置
  • macOS 公证 + Windows 代码签名

架构设计

IPC

contextBridge

主进程: 窗口/更新/托盘

Preload: 安全桥接

渲染进程: React App

关键优化

指标优化前优化后
冷启动4.2s1.8s
内存占用800MB280MB
安装包180MB95MB
更新成功率85%98%

结果收益

  • 2000+ 内部用户日常使用
  • Vite 构建 + electron-builder 多平台 CI 自动化
  • Context Isolation + Preload 安全模型零安全事故

反思

Electron 的性能问题 80% 在渲染进程,Profiler + 组件卸载治理比换框架更有效。