8章モバイルネットワークの最適化

ここまでの章で説明したキープアライブ接続、クライアント近くのサーバ配置、TLSの最適化などといった、他のプロトコル最適化を通じて行うレイテンシの最小化は、レイテンシとスループットが特にパフォーマンスを左右するモバイルアプリケーションに関しては特に重要な要素です。これらと同様に、すべてのWebアプリケーションのパフォーマンス最適化のベストプラクティスも適用可能です。本章の前に10章を先に読んでもかまいません。

しかし、モバイルネットワークは開発者が行うべき最適化戦略に新しいユニークな要件を提示します。モバイルWebに向けたアプリケーションの設計には、コンテンツのプレゼンテーションの注意深い計画と検討が必要です。プレゼンテーションは、デバイスのフォームファクター、無線インターフェイスの特徴的なパフォーマンスの特性、そしてバッテリー持続時間によって制限されます。モバイルデバイスにおけるこれら3つの制限はそれぞれ密接に関係しています。

開発者にとってはプレゼンテーション層が一番制御しやすいため、レスポンシブデザインのようなトピックが注目を集めることが多いでしょう。しかし、パフォーマンス要件を満たしていないようなアプリケーションでは、ネットワークパフォーマンスについての設計上の想定が間違っている場合が多くあります。アプリケーションプロトコルは同じでも、物理的な通信レイヤーの違いが多くの制約を課すことで、遅いレスポンス、高いレイテンシの変化、そしてそれらがユーザのストレスや不満につながります。さらに、ネットワークにおける間違った決断は、デバイスのバッテリー持続時間を極端に短くすることがあります。

モバイルデバイスにおける3つの制限に、普遍的なソリューションはありません。プレゼンテーション層、ネットワーキング、バッテリー持続時間にはそれぞれベストプラクティスが存在しますが、これらは調和しないことが多いのです。要件のバランスを取る責任は開発者とそのアプリケーションにあります。いずれにしても、一つだけ確かなことがあります。これらの制限のうち1つをただ単に無視するだけではあまりよい効果をあげることはできません。 ...

Get ハイパフォーマンス ブラウザネットワーキング ―ネットワークアプリケーションのためのパフォーマンス最適化 now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.