Discord、ElectronアプリをRust製クライアントに置き換え、パフォーマンスとメモリ使用量を大幅改善
Every Windows 11 app should kill Electron, and Discord just showed why (windowslatest.com)
要約
Discordは、Windows 11向けデスクトップアプリをElectronベースからRustとGPUIで再構築した新しいクライアントに移行しています。この新クライアントは、起動時間が大幅に短縮され、「Starting」画面が表示されなくなったほか、RAM使用量が約70%削減されるなど、パフォーマンスとリソース効率が劇的に向上しています。モバイルアプリやWebアプリも同様に刷新されます。
全文翻訳
Every Windows 11 app should kill Electron, and Discord just showed why: no “Starting” screen and 70% less RAM, even with two accounts signed in
[画像: Discordの現在のElectronクライアントと新しいRustクライアントが、Windows 11を実行する2台のLenovo ThinkPadで並んで起動している様子]
Discordの新しいRustクライアントは、共同創設者兼CTOであるStanislav Vishnevskiy氏のXアカウントで見つかった15秒のクリップで、現在のElectronアプリがロード画面を抜け出す前にフレンドリストをロードしました。投稿時点でこの動画は230万回再生されており、Discordの従業員は両方のアプリがコールドスタートから起動されたことを確認しています。
Vishnevskiy氏はまた、タスクマネージャーに表示される新クライアント(Discord Phoenixとして表示)の290.2MBのRAM使用量が、2つのアカウントに同時にサインインした状態であることを示しており、既に効率的なRAM使用量を正当化しています。
[画像: Discord Rust for Windows 11]
Discord Rust for Windows 11
DiscordのRustクライアントはElectronアプリのロード完了前に開く
「RAM使用量が少ない新しいDiscordクライアントは物語の一部にすぎません。クリックしたときの反応が瞬時で、元には戻れません。起動時間を見てください」とVishnevskiy氏はXに投稿し、Discordの公式アカウントも現在のクライアントを左に、Rustのリビルドを右にしたクリップを共有しました。
[[動画: https://www.windowslatest.com/wp-content/uploads/2026/11/Electron-Discord-vs-Rust-Discord-where-the-new-client-opens-must-faster-than-the-old-one.mp4]]
私たちは動画をフレームごとに確認しました。印象的なのは、現在のクライアントが最初に開き、約3秒間真っ暗なウィンドウが表示された後、「古代、Discordはブラウザ専用アプリとして始まりました」というヒントが表示されることです。皮肉なことに、Electronアプリは今日でもブラウザエンジンを搭載しています。
約1.5秒後に新クライアントがダブルクリックされますが、ウィンドウは1秒以内にフェードインします。古いアプリが起動から約5秒後にインターフェースに到達する頃には、Rustバージョンは既にフレンドリストをロードしていますが、Electronクライアントは一時的に「現在オンラインのフレンドはいません」と表示します。
Discord Windowsアプリ。出典: Windows Latest
もちろん、Xのユーザーは新アプリがシステムトレイからポップアウトしただけではないかと尋ねました。「両方ともコールドスタートです。本当にそれくらい速いのです。私たちは社内でしばらく使っていましたが、初めて試したときに、新しく開いたのに閉じ忘れたのかと思いました」と、Discordのオーディオ・ビデオ部門を率いるCoral氏は回答しました。
Discordでソーシャルメディアとコミュニティを担当し、クリップを撮影したTravis氏は、トレイからの起動であれば「フレンドリストは既にロードされているはずです!」と付け加えました。Vishnevskiy氏は、彼が「これらの古臭いラップトップを見つけてくれてありがとう」と感謝しました。これらのラップトップはCopilotキー付きのThinkPad、つまり2024年以降のもので、私はそれを古臭いとか古いとは呼びたくありません。美しいマシンです!
新しいDiscordアプリは「Starting」画面をスキップし、バックグラウンドで更新する
ご存知の通り、現在のアプリは通常、開くときに更新を確認し、「Starting」画面を表示しますが、Xのユーザーの一人は「毎回5〜10秒かかる」と述べています。新クライアントがそれをスキップする理由について、Coral氏は「ブートストラップが非常に速く、新しいアーキテクチャなので、そのモーダルは全く必要ありません。バックグラウンドで自動更新します」と説明しました。
Discord起動アニメーション。出典: Windows Latest
Discordは、Microsoft StoreやWindowsのUpdate Orchestration Platformに更新を渡しているわけでもありません。Coral氏は、「現時点では行っていません」と述べています。
DiscordのRustクライアントは、2アカウントログイン時でRAM使用量が約70%削減される
ある返信で、チャットアプリにしては290MBは「まだひどい」と指摘されたことに対し、Vishnevskiy氏は「あの4Kアバター装飾はどこかにレンダリングされなければなりません ;) ですが、冗談はさておき、このクライアントは実際には2つのアカウントを同時に実行しており、新クライアントはそれをサポートしています」と述べました。
現在のアカウントスイッチャーでは、最大5つのアカウントを追加して切り替えることができます。新クライアントが、クライアントを再起動することなく、仕事用と個人用のアカウントを同時に実行できるか尋ねられたVishnevskiy氏は、「はい」と答えました。これもまた、印象的でエキサイティングです。
Discordアイドル時のRAM使用量。出典: Windows Latest
比較として、Discordの従業員は2025年12月に、通常の利用で1GB未満、会社がRAM使用量が4GBを超えた場合にアプリを自動再起動するテストを行ったと述べています。したがって、290.2MBは1GBマークより約70%低く、私たちのPCでは、Electronアプリは通常1〜2GBでアイドル状態になります。明確にしておくと、これは初期ビルドのスナップショットであり、Discordは両クライアントの同等比較ベンチマークを公開していませんが、Rustバージョンを入手したらそのテストを実施する予定です。
DiscordはElectronを内部から修正しようとしました。9月のパッチノートによると、Electron 42へのアップグレードにより中央値CPU使用率が約17%削減されましたが、「p50メモリ使用量にわずかな後退(約4%)を伴いました」。後でテストされたゲームモードトグルでさえ、RAMについては言及されていません。
DiscordはTauriではなくGPUIでElectronを置き換える
ElectronはChromiumからマルチプロセスアーキテクチャを継承しているため、すべてのElectronアプリは独自のブラウザエンジンを搭載しており、メインプロセスと各ウィンドウのレンダラープロセスがあります。多くの人がDiscordが選択すると推測していたTauriは、アプリロジックにはRustを使用しますが、インターフェースはシステムのWebview(WindowsではWebView2)内でHTML、CSS、JavaScriptで構築します。
Discordは、Zedコードエディタの開発元による「Rust用の高速なハイブリッド即時モードおよびリテインモード、GPUアクセラレーションUIフレームワーク」であるGPUIを選択しました。GPUIはHTMLなしでGPU上にインターフェースを描画し、Discordが2018年から使用しているRustは、ガベージコレクタなしでメモリを管理します。
| テクノロジー | 内容 | Discordでの役割 |
|---|---|---|
| Rust | プログラミング言語 | 新しいクライアントと共有アプリコード |
| GPUI | Zed製のRust UIフレームワーク | 新しいデスクトップアプリを描画 |
| Electron | ChromiumとNode.jsランタイム | 現在のデスクトップアプリ、削除予定 |
| Tauri | システムWebviewを使用するRustフレームワーク | 使用しない |
| React Native | モバイルアプリフレームワーク | 現在のモバイルアプリ、削除予定 |
なぜWinUIではないのか、とあなたは尋ねるかもしれません。(少なくとも私はそう思いました。)Discordはそれに言及しておらず、MicrosoftのネイティブフレームワークはWindowsでしか実行できませんが、GPUIは既にWindows、macOS、LinuxでZedを動かしています。DiscordはGPUIの上に独自のパッチを適用しており、Vishnevskiy氏は「関連性があればコミュニティにアップストリームできるものを見ていくでしょう」と述べています。
YouTube埋め込みやアクティビティなど、Web技術が意味をなす場所では、システムのWebviewを使用します。「アクティビティに関しては、Tauriと同様にネイティブWebviewを使用しています」とVishnevskiy氏は述べています。
DiscordのモバイルアプリはReact Nativeを廃止、WebアプリはWebAssemblyへ移行
スマートフォンはネイティブインターフェースを維持しますが、アプリコードはRustを通じてデスクトップと共有されます。React Nativeについて、Vishnevskiy氏は「当初からiOSアプリはReact Nativeで始まり、Androidは数年前に機能のパリティを達成するためにReact Nativeに移植されました。常に遅れをとっていたからです」と説明しました。
ブラウザバージョンは引き続きHTMLをレンダリングしますが、「ロジックはJSではなくWASMになります」。WebAssembly(WASM)は、Rustのような言語で書かれたコードをブラウザ内で実行できるため、WebアプリもRustコードを共有できます。見た目については、好き嫌いは別として、「アプリは現在のものと同一に見え、動作します」とVishnevskiy氏は述べています。
DiscordのRustクライアントはまもなくプライベートテストに入る
試すことができない人に向けて、DiscordのマーケティングディレクターであるRyan K. Rigney氏は、「まもなくプライベートテストに入ります。まず安定性とセキュリティを確保するために時間をかけます。しかし、それほど長くはかからないでしょう」と述べました。私はバグを修正してくれるのを待つ方が良いでしょう。
[画像: Discord for Windows 11 RAM使用量]
Discordのエンジニアリング担当VPであるMark Smith氏は、「パフォーマンスと同じくらい、アクセシビリティとセキュリティも私たちにとって重要です」と付け加え、Coral氏は新クライアントがログイン・トークンをシステムのキーリング(Windows 10および11ではCredential Manager)に保持すると確認しました。
もちろん、DiscordはWindowsのためだけにこの作業を行っているわけではありません。Linuxでも動作するか尋ねられたRigney氏は「はい」と答え、Coral氏は「社内では多くの人がMacを使っています!」と述べました。Discordはまだ公開リリース日を発表していません。
DiscordはWhatsAppとTeamsをWindows 11でさらに見劣りさせた
Electronにより、Discordは10年間、Windows、macOS、Linuxで単一のデスクトップアプリを簡単にリリースできました。しかしDiscordは今、数百万人のユーザーを持つチャットアプリが、再設計なしにバンドルされたブラウザを廃止できることを示しました。
[画像: WhatsApp、Teams、Discordを合わせて1.5GBのRAMを使用(アイドル時)]
WhatsApp、Teams、Discordを合わせて1.5GBのRAMを使用(アイドル時)。出典: Windows Latest
一般ユーザーや企業向けの最大のメッセージングプラットフォームの所有者であるMetaとMicrosoftは、言い訳をする時間がなくなっています。WhatsAppは、100MB未満でアイドル状態だったネイティブアプリから、最大1.2GBを使用するWebView2ラッパーになり、私はそれをアンインストールしました。Microsoft TeamsもWebView2を使用しており、私たちのテストでは何もしていない状態で963MBを消費し、WinUIを推進しているにもかかわらず、Redmondがネイティブ化に十分な関心を払っているようには見えません。
皮肉なことに、AIが私たちをここまで導きました。データセンターがDRAM供給を吸収し、価格が急騰し、Windows責任者のPavan Davuluri氏は現在、「メモリは業界全体で私たちの最優先事項です」と述べており、MicrosoftはWindows 11のRAM使用量を削減しています。より多くのRAMを要求し続けていたアプリは、ついにダイエットに入り、私たちは一周したのです。
ロールアウトされるRustベースのDiscordを試すのを待っていますか?