WordPress用HTTP / 2の紹介

HTTP / 2は、最新のWebで導入される最も重要なマイルストーンの1つです。この記事では、HTTPの現在の状態に焦点を当て、HTTP / 2の主要な利点(および一部の非技術的な概念)を紹介します。 2018年にはWordPressにHTTP / 2を実装する方法も学びます.


HTTPの簡単な歴史

HTTPは、1991年にTim Berners Leeによって作成されたHypertext Transfer Protocolの略です。Timは、World Wide Webに感謝しなければなりません。 HTTPは最も広く普及しており、広く採用されています。 アプリケーションプロトコル インターネット上で。しかし、それだけではありません.

ちょっと待って。フレーズを強調しました アプリケーションプロトコル. 何故ですか?ご覧のとおり、インターネットは実際にはプロトコルの4つの階層層で構成されています。各層は多数のプロトコルで構成されており、 コア機能.

少しおもしろいですが、インターネットプロトコル(IP)スイートには4つの層があります。

  1. アプリケーション層
  2. トランスポート層
  3. インターネット層
  4. リンク層
インターネットアプリケーション層プロトコル

インターネットプロトコルレイヤー。ソース: ウィキペディア

詳細にあまり触れずに、最後の3つのレイヤー(トランスポート、インターネット、リンクレイヤー)は、交換されるデータの信頼性の高い接続を確立する責任があります。.

最上層は、 アプリケーション層, すべてに役立ちます アプリケーション インタネットの中には.

  • Webページの表示はインターネットのアプリケーションであり、HTTPプロトコルによって可能になります.
  • 電子メールはインターネットのもう1つのアプリケーションです– POPまたはIMAPプロトコルによって可能になりました.

がある アプリケーション層の複数のプロトコル YouTubeライブ動画や クラッシュオブクラン 可能.

HTTP / 2の誕生

WordPressの始まりのHTTP / 2

HTTPはクライアントとサーバー間の共通言語であり、最新のWebを可能にします。単一のキーワードとドキュメントパスとしての単純な始まりから、ブラウザだけでなく、インターネットに接続された事実上すべてのソフトウェアおよびハードウェアアプリケーションに最適なプロトコルになりました。.

これは疑問を投げかけます– この重要なソフトウェアをどれくらいの頻度で更新するか? 結局のところ、それほど頻繁ではありません

実際、HTTPプロトコルが最後に更新されたのは1997年で、最初のiPhoneがリリースされる10年前のことです。これはHTTPバージョン1.1であり、20年後の現在でも、現在最も広く使用されているHTTPバージョンです。!

猫の動画のストリーミングから、国際宇宙ステーションから配信されるライブビデオチャット、何兆ものオンライントランザクションまで、インターネットで発生するすべてのことは、これまでアップデートされていないテクノロジー上で発生します 二十年. 長年にわたり、私たちはインターネット用の新しいアプリケーションの作成を大きく進歩させてきました。しかし、私たちはこれをすべて作成して 回避策 HTTP / 1.1の制限から

HTTP / 1.1がすべて悪いと言うつもりはありません。しかし、それはできます 必ずアップデートを使用してください. それが2015年の理由です インターネット技術特別調査委員会 HTTPのためのより良いプロトコルを作成することについてのダブルダウン.

その結果、HTTP / 1.1で実行されているすべてのものとシームレスに連携しながら、基盤となるテクノロジーにいくつかの重大な改善を加えた新しいプロトコルが生まれました。この新しいプロトコルはHTTP / 2と呼ばれていました.

HTTP / 2の変更点?

実際にはたくさんのこと。ただし、ここではそれらすべてを取り上げるわけではありません。そのときまでに退屈することは間違いなく、マニアックな方法で説明することはできません。ただし、WordPress用のHTTP / 2に関しては、いくつかの重要なポイントがあります。.

多重化

HTTP / 1.1では、サーバーとクライアントは、リソースを要求するために個別の接続を確立する必要がありました。 UpWorkのこの美しいイラストで説明しましょう。

WordPress用HTTP / 2:多重化

多重化のイラスト UpWork

ウェブサイトは、HTML、CSS、JavaScript、画像、その他のファイルで構成されています。これらのファイルはまとめてリソースと呼ばれます。この例では、JavaScriptファイル、CSSファイル、画像ファイルの3つのリソースで構成されるWebサイトがあります。.

HTTP / 1.1では、ブラウザーがこれらのリソースを要求するためにサーバーとの3つのTCP接続を必要とすることがわかります。どうして? HTTP / 1.1では、各接続が要求できるのは1つの要求だけだからです。通常、接続数が多いと、リソースの「渋滞」として最もよく表現される結果となり、最終的にはWebサイトのエクスペリエンスが低下します。.

HTTP / 2は多重化をサポートします

多重化は、サーバーが単一の接続で複数のファイルを送信できるようにするテクノロジーです。その結果、同じWebサイトがHTTP / 2を使用する場合、3つのリソースすべてを単一の接続で送信できます。その結果、ロード時間とネットワークリソースの消費が大幅に削減されます。簡単に言えば、少ないリソースで多くのことができるようになります。したがって、WordPress用のHTTP / 2は、WordPressサイトを(潜在的に)高速化する優れた方法です。.

ドメインシャーディングとその他の改善

新しいアプリケーションがHTTP / 1.1の特定の制限を克服するために「回避策」をどのように必要とするか覚えていますか?ドメインシャーディングはそのような回避策の1つです。ドメインシャーディングが必要な理由を見てみましょう.

通常、HTTP / 1.1は、サーバー(ドメイン)とクライアント間のオープン接続の最大数を制限します。ほとんどのWebサイトには、並行して読み込まれる複数のリソースがあります。サイトの読み込みを高速化するために、ウェブサイトは複数のサブドメインからリソースを提供し始めました。これはドメインシャーディングと呼ばれます.

WordPress用HTTP / 2:ドメインシャーディング

UpWorkによるドメインシャーディングの図

現在HTTP / 2を使用しているため、ドメインを共有する必要はありません。 HTTP / 2がオープン接続の最大数の制限を設けていないからではありません。しかし、HTTP / 2は多重化をサポートしているためです。すべてのリソースを1つの接続で直接送信できます!

HTTP / 2の多重化のおかげで、これらの「回避策」の多くは不要になりました。これらには CSSスプライト, CSSを使用したインライン画像 データURI, CSSとJavaScriptの連結。入れる スマッシングマガジンの言葉:

HTTP / 2の世界では、HTTPリクエストは安価です。アセットが使用されるページに従って開発中にアセットを整理すると、はるかに優れたものになります。その後、訪問者が必要とするコードのみを提供できます。小さなスタイルシートをたくさんダウンロードしてもかまいません。物事の変化の頻度に基づいて整理することもできます。その後、寿命の長い資産をより長くケアできます.

バイナリプロトコルのサポート

コンピューターが0と1で話すことを知っていますよね?まあ、それはHTTP / 1.xが以前話していた方法ではありませんでした。テキストコマンドを処理して要求と応答のサイクルを完了するために使用されるHTTP1.x.

HTTP / 2は、テキストプロトコルからバイナリプロトコルへの変換をサポートしています。これにより、サーバーとクライアントは実際のテキストの代わりに0と1で話すことができるため、同じ要求/応答サイクルを完了するために必要な時間とエネルギーを大幅に削減できます。.

HTTP / 2サーバープッシュ

この機能の説明は少し複雑になる可能性がありますが、私はそれを単純に保つように努めます。従来のHTTP / 1.1シナリオでは、サーバー(またはWebサイト)は、クライアントがリソースを要求した場合にのみ、クライアント(ブラウザー)にリソースを送信します。これは、典型的な要求と応答のシナリオです.

ただし、HTTP / 2は、サーバープッシュの概念を導入しています。サーバープッシュの概念では、クライアントがリソースを明示的に要求しなくても、サーバーがリソース(または情報)をクライアントに送信できます。このメカニズムは、要求と応答の往復を節約し、ネットワークの待ち時間を短縮します.

Web開発者は、サーバープッシュを活用するアプリケーションを構築し、要求を予測することで追加のリソース/情報をクライアントに送信できます。最終結果?より速く、よりスムーズなアプリケーション.

ヘッダー圧縮

HTTP / 2は、クライアントとサーバー間でデータを交換するときに、HPACKヘッダー圧縮と呼ばれるものを使用します。なぜこれが重要なのかを説明する前に、プロトコルについてもう少し学習します。.

プロトコル(HTTPを含む)のデータユニットは、ヘッダー、ペイロード、フッターの3つのコアコンポーネントで構成されています。.

  1. ヘッダー:ヘッダーにはデータユニットに関する情報が含まれています
  2. ペイロード:これは、サーバーからクライアントに転送される実際のデータです。
  3. フッター:これは、データユニットがエラーなく正常に配信されたことを確認する一種のチェックリストです。.

ヘッダー圧縮は非常に簡単な方法で機能します–サーバーはヘッダー情報を圧縮します それをクライアントに転送します。データユニット(またはパケット)を受信すると、クライアントはヘッダーを圧縮解除し、ユーザーに(または使用して)ヘッダーを表示(または使用)します。.

メディアリッチなWebサイト(NetflixやNew York Timesなど)が今日の標準になり、HTTP / 2のHPACKヘッダー圧縮により、サーバーからクライアントにデータを転送するときに帯域幅を大幅に節約できます.

TLSの改善

TLSはTransport Layer Securityの略で、サーバーとクライアント間の接続を暗号化する技術です。 HTTPSがあることはわかっています。これは、オンライン取引中にハッカーがクレジットカード情報やその他の個人データを盗むのを防ぐのに役立つテクノロジーです.

HTTP / 2は既存のTLSテクノロジーと問題なく動作し、TLSハンドシェイクの減少、クライアント側とサーバー側の両方でのリソース消費の削減、既存のWebセッションの再利用における改善された機能など、HTTP / 1に関連する特定の脆弱性を排除するなどの高度な機能をもたらします。バツ.

世界はHTTP / 2に対応していますか?

まあ、それは異なります。 ChromeやFirefoxを含む最新のブラウザのほとんどは、HTTP / 2プロトコルをサポートしています。 HTTP / 2プロトコルを実装するためのリソースがある場合–先に進んでそれを実行する必要があります.

主要なWebブラウザー間のHTTP / 2の互換性チェック。

CanIUse.com 主要なWebブラウザー間でのHTTP / 2の最新の互換性チェックを提供します

WordPressのHTTP / 2を使い始める方法?

WordPress用HTTP / 2

WordPressホストにHTTP / 2を実装するには、多くの技術的ノウハウが必要です。あなたが開発者であるか、ネットワークであり、サーバーを管理することがあなたの仕事なら–それのために行きます.

良いニュースは、優れたWordPressホスティングプロバイダーのおかげで、WordPress用のHTTP / 2の実装が簡単になったことです。例として、WPEngineとKinstaの両方がHTTP / 2をサポートし、新しいプロトコルをサポートしていないサイト訪問者が信頼できる完全に最適化されたバージョンのHTTP / 1.1エクスペリエンスを確実に取得するために必要なすべてのフォールバックを備えています。.

インターネットユーザーの観点からは、ブラウザの最新バージョンをダウンロードする以外に何もする必要はありません。 WebサイトがHTTP / 2と互換性がある場合、ブラウザは新しいプロトコルを使用して自動的に通信します。ただし、HTTP / 2は完全に下位互換性があるため、古いHTTPを使用しているWebサイトは影響を受けません。つまり、ただ座ってウェブサイトの読み込みを速くすることができます.

WordPress用のHTTP / 2のまとめ

HTTP / 2 for WordPressは、世界で最も重要なテクノロジーの1つに対する、非常に必要とされている革新的なアップデートです。ただし、 たくさん HTTP / 2が主流になる時間– HTTPSウェブサイトのように。とはいえ、この記事の目的は、World Wide Webの顔を変える可能性のあるこの素晴らしい技術を読者に紹介することです。.

WordPressのHTTP / 2についてどう思いますか?質問?下のコメント欄でお知らせください!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me