不要なダウンロードの除外

最も時間がかからず、最も最適化されたリソースとは、送信しないリソースです。最近、リソースを監査しましたか。各リソースがユーザー エクスペリエンスの向上に貢献するよう、リソースは必ず定期的に監査してください。

TL;DR

  • ページ上の独自のアセットとサードパーティ製のアセットをすべて記載した一覧表を作成する
  • 各アセットのパフォーマンス(価値と技術的なパフォーマンス)を測定する
  • リソースが十分な価値を提供しているかを判断する

最も時間がかからず、最も最適化されたリソースとは、送信しないリソースです。当然、これはわかりきった話に思えるかもしれませんが、実は見落としがちです。常に目を配りアプリケーションから不要なリソースを除外するチャンスを見逃さないようにすることがパフォーマンス エンジニアの仕事です。チームと連携して暗黙の了解や明示的な前提を疑問視し、定期的に見直しを行うことをおすすめします。次に例を示します。

  • ページにはリソース X が常に含まれていますが、そのリソースのダウンロード コストと表示コストは、そのページがユーザーに提供する価値に見合っていますか。その価値を測定し証明することはできますか。
  • リソース、特にサードパーティ製リソースは、一貫したパフォーマンスを提供していますか。このリソースはクリティカル パスにありますか。また、クリティカル パスに置く必要がありますか。リソースがクリティカル パスにある場合、そのリソースはサイトの単一障害点になる可能性がありますか。たとえば、リソースが利用できなくなった場合、パフォーマンスやページのユーザー エクスペリエンスに影響しますか。
  • このリソースには SLA が必要ですか。また、SLA が適用されていますか。このリソースはパフォーマンスの成功事例(圧縮、キャッシュなど)に沿っていますか。

ページに不要なリソースが含まれていることは日常茶飯事であるだけでなく、さらに悪いことに、そのリソースがサイトやユーザーにとってあまり価値がなければページのパフォーマンスも下がります。このことは、ファーストパーティ、サードパーティを問わず、どちらのリソースやウィジェットにも同じように当てはまります。

  • サイト A では、ホームページにフォト カルーセルを表示し、ユーザーがクリックしながら複数の写真をプレビューできるようにしました。ページの読み込み時にすべての写真が読み込まれ、ユーザーが写真を前に進めます。
    • 質問: カルーセルで複数の写真を表示しているユーザーの数を測定したことがありますか。表示しているユーザーがほとんどいない不要なリソースをダウンロードすることで高いオーバーヘッドが発生する可能性があります。
  • サイト B では、サードパーティ製のウィジェットをインストールして、関連コンテンツを表示したり、社会的つながりを向上させたり、その他のサービスを提供したりすることにしました。
    • 質問: ウィジェットを使用しているユーザーやウィジェットが提供するコンテンツをクリックスルーしているユーザーの数を追跡したことがありますか。このウィジェットのオーバーヘッドを十分に正当化できるだけのつながりがこのウィジェットで創出されていますか。

おわかりのように、不要なダウンロードの除外はつまらない話のように思えますが、実は決してそうではありません。決断を下すには、何度も慎重に検討し測定することが必要になります。実際、最高の結果を出すには、定期的にページ上のすべてのアセットの一覧を作成し、アセットごとにこうした質問に立ち戻ることが必要です。