ElectronとWebコンポーネントの影響でWindows 11の人気アプリがメモリ消費量増加、RAM価格が急騰

ElectronとWebコンポーネントの影響でWindows 11の人気アプリがメモリ消費量増加、RAM価格が急騰

Windows 11では、広く使用されている多くのアプリケーションがシステムリソース、特にRAMに大きな負担をかけています。この状況は、RAM価格の高騰と、開発者の間で従来のネイティブアプリケーションよりもWebアプリケーションを好む傾向の高まりによってさらに悪化しています。こうした変化は、PCやノートパソコンの全体的なパフォーマンスに悪影響を及ぼす可能性があります。

Windows Latestの最近のレポートでは、Discord、Teams、そして刷新されたWhatsAppといったアプリケーションが、バックグラウンドで動作している場合でもかなりのRAMを消費することが指摘されています。これらのアプリケーションは主にコミュニケーションを目的としており、常に動作し続ける必要があるため、リソース需要が高まります。

テストの結果、ネイティブWhatsAppのような一部のアプリケーションの古いバージョンは、RAMの使用量が大幅に少ないことが実証されています。様々なドメインで高いユーザーエンゲージメントを誇るにもかかわらず、ネイティブバージョンが軽視されていることは、重要な疑問を提起します。なぜ開発者は、最も人気のあるデスクトッププラットフォーム向けに最適化されたネイティブアプリケーションへの投資を控えるのでしょうか?

Windows 11でRAMを最も消費する要因

RAMコストが高騰する現状において、アプリケーションによるRAM消費について議論するには、今がまさに適切なタイミングです。Micronが**コンシューマー向けRAM事業**(価格上昇の大きな要因)を終了したことで、状況はさらに悪化しています。

Windows 11は発売当初、RAM要件の厳しさで批判を浴びましたが、2025年までに状況はさらに悪化しました。主要な通信アプリは、まるで無限のリソースであるかのようにRAMを消費しています。

Discord: RAMを大量に消費する巨大企業

ゲームやオンラインコミュニティの定番であるDiscordは、RAMを大量に消費することで悪名高い存在です。Electronフレームワークをベースに構築されたDiscordは、ChromiumブラウザインスタンスとNode.jsを組み合わせた形で動作します。サーバーへの参加からチャンネルへの参加まで、あらゆるインタラクションはブラウザアーキテクチャ内で追加のプロセスを起動し、RAM使用量を増加させます。

Discord WindowsアプリのRAM使用量

Discordは、通常のRAM使用量は1GB程度であると主張していますが、実際の使用状況では簡単に4GBまで急増する可能性があることが明らかになっています。この非効率性から、同社はメモリを解放するために設計された「自動再起動」機能を実験的に導入しました。この機能は、アプリが30分​​間アイドル状態のままで、かつ1時間以上通話を行っていない場合に起動します。

この動きは解決策として意図されたものの、本質的な問題に対する短期的な解決策のように感じられる。真のメモリリーク問題に取り組んでいるにもかかわらず、Electronの基盤構造が本質的に過剰なリソース消費につながることは明らかだ。

Discord は RAM の問題を認識しているものの、資金的な制約によりネイティブ アプリの開発に多額の投資を行うことができず、コミュニケーション アプリケーションに共通する非効率性の傾向を反映しています。

WhatsApp:ネイティブのスピードからパフォーマンスの低下へ

WhatsAppがレスポンシブなネイティブアプリケーションから動作が遅いWebラッパーに移行したことで、ユーザーエクスペリエンスは著しく低下しました。従来のUWPおよびWinUIクライアントは軽量で効率的であり、高負荷のシナリオでも通常は約100MBのRAMしか消費しませんでした。

しかし、WebView2ラッパーとして設計された新バージョンの導入により、メモリ使用量が大幅に増加しました。初期テストでは、ベースラインのRAM使用量は約300MBでしたが、アプリがチャットを同期し、ユーザーがメッセージをスクロールすると、約1.2GBにまで増加しました。

さらに、このアプリケーションはパフォーマンスの遅延に悩まされており、特にフレームレートの低下とチャット切り替え時の遅延が顕著です。アプリを終了してもプロセスは終了せず、システムトレイに最小化されますが、バックグラウンド通知のためにRAMを消費し続けます。これは以前のネイティブバージョンにはなかった機能です。

Meta は macOS 用のネイティブ アプリを提供しているにもかかわらず、より普及しているプラ​​ットフォームである Windows 上で Web ベースのエクスペリエンスを選択しており、最適化されたアプリケーションを提供することへの取り組みが不足していることを反映しています。

Microsoft Teams:ユーザーエクスペリエンスの低さ

ElectronからWebView2に移行したMicrosoft Teamsは、依然としてRAMの非効率性を示しています。アイドル時のRAM使用量は頻繁に1GB前後で推移しており、フレームワークを変更するだけでは根本的な問題が解決されないことを示しています。

こうした懸念を受けて、MicrosoftはTeamsの構造変更を発表しました。例えば、通話機能用の別プロセスを導入するなどです。しかし、これらの変更はWebView2アーキテクチャへの依存を解消するものではなく、パフォーマンスの問題は依然として残っています。

WebView2 コンポーネントが Windows から削除されると、Teams は動作しなくなります
WebView2 コンポーネントが Windows から削除されると、Teams は動作しなくなります

特に Microsoft は企業顧客の日常的なコミュニケーション ニーズを満たすために Teams に依存しているため、現状は望ましいものではありません。

現在の Windows アプリケーションにおける RAM 使用量の理解

Microsoft Store で見つかる新しいアプリケーションの大部分は、Windows アプリケーションの従来の定義に厳密に従っておらず、ブラウザエンジンに類似していることが多いです。Electron、WebView2、プログレッシブ Web アプリ (PWA) などのプラットフォームは、組み込みの Chromium ランタイムに依存しています。

例えば、Electronアプリはそれぞれ独自のJavaScriptエンジンと関連プロセスを搭載しています。チャットやチャンネルなど、アプリ内の様々な要素間のやり取りは、追加のサンドボックス化されたプロセスを生成するため、RAM消費量が大幅に増加します。

WebView2は、既存のMicrosoft Edgeをレンダリングに活用することでこの肥大化を軽減しようとしていますが、フレームワークに内在する非効率性を完全に排除しているわけではありません。WhatsAppアプリは、一見シンプルなチャットインターフェースのように見えますが、実際には複雑なブラウザタブとして動作しています。

新しい Teams デスクトップ アーキテクチャ
新しい Teams デスクトップ アーキテクチャ

Reddit アプリなどの PWA も同様の動作を示しており、Chromium のマルチプロセス アーキテクチャへの一般的な依存を示しています。

ElectronとWebView2のトレードオフ

技術的なレベルでは、WebView2は効率性においてElectronよりも優れています。Electronはアプリごとにフルブラウザをインスタンス化するのに対し、WebView2は既存のMicrosoft Edgeを利用することでオーバーヘッドを削減します。しかし、WebView2はWindowsとの密接な連携とEdgeへの依存が依然として強く、移植性に限界があります。

これらのアーキテクチャ上の決定は恣意的なものではなく、セキュリティとパフォーマンス基準の強化を目的としています。最新のブラウザは、ユーザーデータを保護するために厳格なプロセス分離を実装しており、その結果、RAM使用量が増加します。そのため、これらのエンジンアーキテクチャを採用したアプリケーションは、必然的にメモリコストが高くなります。

さらに、現代のJavaScriptフレームワークは、独自のリソース要求によってこの状況を悪化させています。クライアント側の状態管理と大規模なバンドルは、最適化されたアプリであっても高いメモリ消費レベルを維持する一因となっています。

メモリリークの課題

メモリリークもまた懸念事項であり、多くの場合、未解決のJavaScript参照やイベントリスナーの蓄積によって引き起こされます。アイドル状態のオブジェクトをキャッシュに保持したり、メモリを適切に解放しなかったりするフレームワークは、Discordなどのアプリケーションで見られるような大幅なアクセス増加からもわかるように、これらの問題を悪化させます。

これらの懸念は、Electron、Chromium Embedded Framework (CEF)、WebView2 アプリに及んでおり、ネイティブのツールと比較したデバッグ ツールの顕著なギャップを浮き彫りにしています。

ウェブアプリが好まれる理由

これらの欠点にもかかわらず、Webアプリ開発の根拠は依然としてコスト効率にあります。単一のJavaScriptコードベースは、最小限の変更でWindows、macOS、Linuxなどの複数のオペレーティングシステムに効果的に対応できるため、開発期間の短縮と採用プロセスの効率化につながります。

さらに、企業はプラットフォーム間でのブランドの統一性を重視し、Webラッパーを利用することがよくあります。しかし、このアプローチは、Appleの統一されたデザイン原則に見られるように、異なるOS環境の独自の美観を軽視しています。

残念なことに、Microsoftを含む多くの組織は、従来のネイティブソリューションよりもWebアプリを優先しています。WhatsAppのようなアプリケーションは機能的なネイティブバージョンから移行していますが、TeamsはWebベースのアプリケーションとして引き続き運用されています。

通知パネルの新しいアジェンダ機能など、Windows オペレーティング システムの一部でも機能に WebView2 が採用されており、コア システム機能内での Web ラッピングへの懸念すべき傾向が示されています。

WindowsとAppleのアプリパフォーマンスの比較

対照的に、Appleのエコシステムのユーザーは、標準以下のアプリケーションに対して寛容性が低いため、開発者はコストを負うにもかかわらず、高性能なネイティブmacOSエクスペリエンスに投資せざるを得ません。特にmacOSでは、厳格な規制により堅牢なネイティブアプリの開発が困難であることも、この点をさらに強調しています。

Windows向けアプリケーションの開発は、Microsoftの広範なフレームワークとサポート体制の整ったエコシステムのおかげで比較的容易になっていますが、ユーザーベースはWeb中心のソフトウェアに慣れてしまっています。そのため、パフォーマンスに関するフィードバックは少なく、企業は最適化への投資を控える傾向があります。

ウェブベースのアプリケーションは、利便性よりもパフォーマンスを優先しない消費者市場によって推進され、ますます普及し続けています。多くの企業が品質よりも機能に重点を置くため、RAMの効率性は軽視されがちです。

RAM価格とWindowsアプリケーションの将来

最近の傾向として、RAMの価格が上昇しており、アップグレードを求めるユーザーにとって課題となっています。その要因としては、消費者向け供給の減少、新しいDDR5モジュールの価格サイクルの激化、AIデータセンターによる需要の急増などが挙げられ、メーカーはエンタープライズレベルのチップを優先するようになっています。

今日のWindowsアプリケーションの蔓延という状況には、単純な解決策はありません。開発者がネイティブアプリケーションを開発する意欲を高め、WinUIの魅力を高め、エコシステムにおける品質の重要性を強調するためには、Microsoftによる抜本的な改革が必要です。

ますますブラウザ アプリ主導の世界で Windows が成功するには、ユーザーと開発者の両方にとって改善された環境を促進し、高性能アプリケーションにとってより魅力的なプラットフォームにすることで、先頭に立つ必要があります。

出典と画像

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です