<br />英語アドレス: http://developer.yahoo.com/performance/rules.html Yahoo! の Exceptional Performance チームは、Web パフォーマンスを向上させるベスト プラクティスを提供します。彼らは一連の実験を実施し、さまざまなツールを開発し、多数の記事やブログを書き、さまざまな会議での議論に参加しました。本質的に、ベストプラクティスは Web サイトのパフォーマンスを向上させるように設計されています。 Excetional Performance チームは、Web サイトの速度を向上させる方法のリストを作成しました。 7つのカテゴリー、34の項目に分けられます。コンテンツ、サーバー、Cookie、CSS、JavaScript、画像、モバイル アプリケーションの 7 つの部分が含まれます。 コンテンツ セクションには 10 個の提案があります。 1. コンテンツ
1. HTTP リクエストの数を最小限に抑えます。エンドユーザーの応答時間の 80% はコンテンツのダウンロードに費やされます。この時間には、ページ内の画像、スタイルシート、スクリプト、Flash などのダウンロードが含まれます。ページ上の要素の数を減らすことで、HTTP リクエストの数を減らすことができます。これは、Web ページの速度を向上させるための重要なステップです。 ページ コンポーネントを削減する方法は、実際にはページ デザインを簡素化することです。では、応答時間を短縮しながらページコンテンツの豊富さを維持する方法はあるのでしょうか?ここでは、ページのコンテンツを充実させながら HTTP リクエストの数を減らすテクニックをいくつか紹介します。 ファイルのマージは、すべての CSS ファイルを 1 つのスタイルシートにまとめるなど、すべてのスクリプトを 1 つのファイルにまとめることで、HTTP リクエストを削減する方法です。スクリプトやスタイルシートをページごとに異なる方法で変更する必要がある場合、これは比較的面倒かもしれませんが、それでも、この方法はページのパフォーマンスを向上させるための重要なステップと見なされるべきです。 CSS スプライトは画像リクエストを減らす効果的な方法です。すべての背景画像を 1 つの画像ファイルに入れて、CSS の background-image プロパティと background-position プロパティを使用して画像のさまざまな部分を表示します。 イメージマップは複数の画像を 1 つの画像に結合します。全体のファイルサイズは変わりませんが、HTTP リクエストの数を減らすことができます。イメージ マップは、ナビゲーション バーなど、イメージのすべてのコンポーネントがページ上で近接している場合にのみ使用できます。画像の座標を決定するのは面倒でエラーが発生しやすく、ナビゲーションに画像マップを使用すると読みにくくなるため、この方法はお勧めできません。 インライン画像は、data: URL スキームを使用して画像データをページに読み込みます。これによりページのサイズが大きくなる可能性があります。インライン画像をスタイルシート(キャッシュ可能)に配置すると、ページ ファイルのサイズの増加を防ぎながら HTTP リクエストを削減できます。しかし、インライン画像はまだ主要なブラウザではサポートされていません。 Web ページ制作チュートリアル チャンネルのコンテンツを表示するには、ここをクリックしてください。ページに対する HTTP リクエストの数を減らすことが、最初に実行すべきステップです。これは、初めてのユーザーの待ち時間を改善するための最も重要な方法です。 Tenni Theurer 氏が自身のブログ「Browser Cahe Usage - Exposed!」で述べているように、キャッシュがない場合、HTTP リクエストは応答時間の 40% ~ 60% を占めます。あなたのウェブサイトを初めて訪れる人の体験をより速くしましょう! 2. DNS ルックアップの回数を減らす<br />ドメイン ネーム システム (DNS) は、電話帳の人名と電話番号の関係と同様に、ドメイン名と IP アドレスの対応関係を提供します。ブラウザのアドレスバーに www.dudo.org と入力すると、DNS 解決サーバーはこのドメイン名に対応する IP アドレスを返します。 DNS 解決プロセスにも時間がかかります。通常、指定されたドメイン名に対応する IP アドレスを返すには 20 ~ 120 ミリ秒かかります。このプロセス中、DNS ルックアップが完了するまでブラウザは何も実行しません。 DNS ルックアップをキャッシュすると、ページのパフォーマンスが向上します。このタイプのキャッシュには、通常はユーザーの ISP プロバイダーまたはローカル エリア ネットワークによって制御される特定のキャッシュ サーバーが必要ですが、ユーザーが使用するコンピューター上にもキャッシュが生成されます。 DNS 情報は、オペレーティング システムの DNS キャッシュ (Microsoft Windows の DNS クライアント サービス) に保存されます。ほとんどのブラウザには、オペレーティング システムに依存しない独自のキャッシュがあります。ブラウザには独自のキャッシュ レコードがあるため、単一のリクエストではオペレーティング システムの影響を受けません。ウェブサイト作成チュートリアルチャンネルのコンテンツを見るにはここをクリックしてください デフォルトでは、Internet Explorer は DNS ルックアップ レコードを 30 分間キャッシュし、レジストリ内のそのキー値は DnsCacheTimeout です。 Firefox は DNS ルックアップ レコードを 1 分間キャッシュします。設定ファイル内のオプションは network.dnsCacheExpiration です (Fasterfox ではこのオプションが 1 時間に変更されます)。 クライアントの DNS キャッシュが空の場合 (ブラウザとオペレーティング システムの両方)、DNS ルックアップの数はページ内のホスト名の数と等しくなります。これには、ページ内の URL、画像、スクリプト ファイル、スタイル シート、Flash オブジェクトなどに含まれるホスト名が含まれます。ホスト名の数を減らすと、DNS ルックアップの数を減らすことができます。 ホスト名の数を減らすと、ページの並列ダウンロードの数も減ります。 DNS ルックアップの数を減らすと応答時間が改善されますが、並列ダウンロードを減らすと応答時間が長くなる可能性があります。私の基本方針は、これらのページのコンテンツを少なくとも 2 つ、最大 4 つに分割することです。その結果、DNS ルックアップの数を減らすことと、高度な並列ダウンロードを維持することの間でトレードオフが発生します。 前のページ1 2 3 次のページ 続きを読む |
<<: DockerはGitを使用してJenkinsのリリースとテストプロジェクトの詳細なプロセスを実装します
現在、プロジェクトの要件により、フォームの送信を制御し、送信前にデータを検証および処理するために j...
モバイル側では、フレックスレイアウトが非常に便利です。デバイスの幅に応じてコンテナの幅を自動的に調整...
1. MySQLがインストールされているかどうかを確認します。次のコードで確認できます。 [root...
問題を見つける最近、プロジェクトで問題が発生しました。接続が多すぎるため、「接続が多すぎます」という...
序文docker イメージを削除できません。docker docker imagesを確認すると、イ...
この記事の例では、じゃんけんゲームを実装するためのJSの具体的なコードを参考までに共有しています。具...
ページの主要部分: <body> <ul id="メニュー"&...
目次1. はじめに2. Viteプロジェクトを作成する1. viteをインストールする2. プロジェ...
ディレクトリ構造 。 │ .env │ docker-compose.yml │ └─mysql ├...
手工芸デザインからグラフィックデザイン、そしてウェブデザインまで、デザインの原則は同じままですが、私...
[LeetCode] 197.気温上昇Weather テーブルが指定されている場合、前の日付 (昨...
ベクトル波 <svg viewBox="0 0 560 20" class...
この記事では、CSS スクロールバー セレクターを紹介し、Webkit ブラウザーと IE ブラウザ...
この記事では、参考までに、シンプルなチャットルームを実装するためのnode+socketの具体的なコ...
背景一時テーブルスペースは、データベースのソート操作を管理し、一時テーブルや中間ソート結果などの一時...