Webの仕組み、パートII:URLにアクセスするとどうなりますか

公開: 2016-12-06

前回の投稿では、Webがどのようになったかについて説明しました。 この投稿では、ブラウザでURLにアクセスするとどうなるかを見ていきます。 また、Webで使用されている最新のテクノロジーと、それらがどのように組み合わされているかについても見ていきます。

Enterボタンを押した瞬間からWebページを表示するまで、関連するテクノロジーは数多くあります。 前回の投稿では、ハイパーテキストとHTTPについて説明しましたが、これはほんの始まりにすぎません。

  • Webサーバー(apache2やnginxなど)は、WebブラウザーがWebデータに接続、要求、および受信できるようにする他のいくつかの機能とともにHTTPプロトコルを実装します。 HTTPは、メッセージ、Webページ、画像、およびリソースがWebサーバーとブラウザーの間を「移動」するためのチャネルです。

    最新のWebは非常に要求が厳しく、最新のWebサーバーはその課題に直面しています。 スケーラビリティとセキュリティは、今日の世界の2つの主要な関心事です。 最新のWebサーバーは、高度にスケーラブルであり(10,000を超える同時接続を処理できます)、負荷分散のための複数のオプションを提供し、SSL/TLSおよびHTTP/2をサポートします。 HTTP/1.1に対するHTTP/2の主な改善点は、間違いなく、優れたパケットストリーミング管理です。 ビデオストリーミングは今日普及しており、HTTP / 1.1は、今日のさまざまなデバイス、ネットワーク容量、およびオンラインWebユーザーの数のすべてのニーズを適切に処理できませんでした。
  • HTML (HyperText Markup Language)は、タグを使用して、Webブラウザーで理解できる構造化されたハイパーテキストドキュメントを表す言語です。

    その最新の化身であるHTML5は、多くの言語の改善とクリーンアップを導入しましたが、最も印象的な追加は、ネイティブのビデオとオーディオのサポート、2Dおよび3Dグラフィックス、およびローカルデータベースストレージでした。 これらの改善により、FlashやSilverlightなどのマルチメディアテクノロジーは事実上廃止されました。
  • CSS (Cascading Style-sheets)は、多くのWebページで視覚的な変更を容易にするためにWebデザイナーが使用するテクノロジーです。

    CSSコードはHTML内に存在するか、通常の場合のように、HTMLページによって参照される個別のファイルです。 CSSの有用性は、コンテンツをプレゼンテーションから分離し、WebデザイナーにWebサイトのすべての美的詳細を一元管理するための強力なツールを提供することです。
  • バックエンド(PHPやJavaなど)はHTMLと混合されたコードであり、計算が終了するとWebサーバーによって実行されます。

    現在、すべてのWebサイトは動的です。 つまり、ブラウザに提供される単純な.htmlファイルはもうありません。 Webフレームワークと呼ばれるソフトウェアライブラリが追加されたすべての最新言語は、Webサイトのバックエンドソリューションとして使用できます。 PHP 7の最近のリリースと、それによって導入された優れたパフォーマンスの改善と機能、およびFacebookのHHVMは、どちらもプロセス全体を次のレベルに引き上げました。
  • フロントエンド(Javascript)もHTMLと混合されたコードですが、コンピューター上でWebブラウザーによってローカルに実行されます。

    おそらく、現代のWebで最も驚くべき印象的な開発は、Javascriptです。 それは、メニューの作成やポップアップの表示に使用されるJavaの単純な弟から、クライアントとサーバーの両方で使用される強力なプログラミング言語になりました。 最近では、Webブラウザ上で非常に高速に何でも実行できます。 GoogleのV8Javascriptエンジンは、主要な技術的ゲームチェンジャーです。

URLにアクセスするとどうなりますか

Webはさまざまなテクノロジーの宝庫ですが、基本的な機能が今日でも変更されていない2つの概念があります。 WebブラウザとWebサーバー。 これらは、次の「古い」クライアント/サーバーモデルで動作します。クライアントは、アドレス(IPまたは名前)を使用してサーバーに接続し、何かを要求します。 次に、サーバーはクライアントなどに応答します。 クライアントはサーバーに接続しますが、その逆はありません。 今日のWebテクノロジーはこのモデルを大幅に変更しましたが、これを使用してプロセスを簡単に説明します。

Pressidiumであなたのウェブサイトをホストする

60日間の返金保証

私たちの計画を見る

したがって、お気に入りのブラウザを起動してWebページにアクセスします。 Enterキーを押してから最終的にページが表示されるまで、次のことが起こります。

web-part2-diagram
  1. ブラウザはまず、コンピュータに設定されているDNSリゾルバと呼ばれるソフトウェアモジュールを呼び出し、入力したURLに対応するIPアドレスを要求します。
    DNS(ドメインネームシステム)は、コンピューター名( www.pressidium.comなど)をIPアドレスにマッピングするコアインターネットサービスです。 IPアドレスは、インターネットに接続されたコンピューターが理解して接続できるものです。 次の投稿では、それが何であり、どのように機能するかを探ります。
  2. 次に、ブラウザは、ポート80または443を使用して、そのIPアドレスへの接続を開始します。
    IPアドレスはサーバーを示し、ポート番号は接続するサービスを示します。 すべてのWebサーバーはデフォルトでポート80で実行されますが、ポート443は安全なWeb接続に使用されます。
    Webサーバーは、入力されたURLを処理し、バックエンドに制御を渡します。 バックエンドコードはHTMLページを生成し、それをWebサーバーに渡します。 次に、Webサーバーは最終的にHTTPチャネルを介してHTMLページをブラウザに送信します。
  3. WebサーバーがHTMLを送り返すのにかかるミリ秒の間に多くのことが起こっています。 Webサイトのバックエンドコードは通常、データベースに接続し、クエリを実行し、データを取得し、他のバックエンドサービスに接続し、最終的にすべてをHTMLドキュメントにアセンブルします。これは、実際には要求している個別のファイルではなく、動的なリソースです。 、さまざまなテクノロジーとコンポーネントを使用してオンザフライで生成されます。
  4. WebブラウザはHTMLページを受信し、Webサーバーへの接続を閉じてから、画面に表示します。 HTMLに存在するJavascriptコードを実行します。最新のWebデザインは、レスポンシブデザインと呼ばれるアプローチに従います。 このアプローチでは、HTML、CSS、およびJavascriptを使用して、ブラウジングに使用するデバイスに応じて、Webページのレイアウトを動的に調整します。 これは、モバイルデバイスやタブレットデバイスの爆発的な成長に伴い、最近非常に重要になっています。

次は何ですか?

これまで、さまざまな最新のWebテクノロジーと、URLにアクセスするとどうなるかについて簡単に触れてきました。 間違いなく、Webテクノロジーは複雑で多数あり、1つの記事だけで十分にカバーすることはできません。 この投稿シリーズでは、主にインターネットとWebの「ワシの目」のビューを提供することを目的としています。
この興味深いシリーズの次回の記事では、もう1つの重要なインターネットインフラストラクチャであるドメインネームシステムについて説明します。 それがなければ、何も実際には機能しません! (少なくとも私たち人間にとっては)。