見出し画像

Webシステムとは

Webシステムの仕組み

WebとはWorld Wide Web(www)を省略したもので、

インターネット上で提供されているハイパーテキストシステム

(wikipedia引用)のことを指します。

これだけだとよくわからないので、「インターネット」と「ハイパーテキストシステム」という言葉に分解します。


まずインターネットとは世界中のコンピュータ同士が繋がってできたネットワークのことです。

世界中のコンピュータ同士が通信をするために、統一されたプロトコル(通信規約)が必要であり、そのために生まれたのが「TCP/IP」というプロトコルです。

インターネットはこのTCP/IPというプロトコルで繋がったコンピュータ同士のネットワークです。


次にハイパーテキストシステムとはリンク(ハイパーリンク)でドキュメント同士の移動が可能な文書=ハイパーテキスト(例:HTML)を利用したシステムのことです。

コンピューター間でのハイパーテキストを転送するための通信規約にHTTP(HyperTextTransferProtocol)というものがあり、Web閲覧はHTTPというルールに基づいて行われます。

HTTP以外の規約には、メール送受信ではSMTP、ファイル送受信ではFTPといった規約が存在します。


Webサイト閲覧の仕組み(クライアント・サーバー)

WebはHTTPプロトコルに基づいたコンピューター間の情報のやりとりです。

ただし単なるコンピューターという訳ではなく、WebクライアントWebサーバー間の情報のやりとりと言い換えることができます。

HTTPは上記で述べたようなクライアント・サーバーモデルと呼ばれる通信モデルが採用されています。

クライアント・サーバーモデルとはやり取りするコンピューターでお互いに特定の役割を持たせて通信を行うモデルとなります。

クライアントにはサーバー側へHTTPリクエストを送る役割があり、サーバーはクライアント側へリクエストに応じたHTTPレスポンスを返す役割があります。

画像1

例えばクライアントから特定のリクエストを送り、サーバーはそのリクエストに応じた処理を行い、処理に応じた値の詰め込まれたHTMLを返却し、クライアントがそのHTMLを読み込んでWebサイトの見た目や内容を画面に反映しています。


Webクライアントの代表的なものとしてWebブラウザがあります。

GUIベースではChrome, Firefox, Microsoft Edgeなどが存在し、CUIベース(コマンドを利用したブラウザ)ではcurlが有名です。

WebサーバーはOSとWebサーバー用のソフトウェアがインストールされ、グローバルIPアドレスが固定的に割り振られてインターネットと常時接続されたコンピューターのことを指します。

OSはLinuxを乗せることが多く、様々な種類=ディストリビューションが存在します(CentOS, RedHat, Ubuntu, AmazonLinuxなど)。

Webサーバー用のソフトウェアにも様々な種類が存在し、代表的なものとしてはApache HTTP ServerやNginxなどがあります。


Webサイト閲覧の仕組み(DNSサーバー)

Webサーバーの条件としてグローバルIPアドレスが割り振られると説明しましたが、普段はhttp://www.example.com/のようにURLを入力して特定のWebサイトに接続します。

グローバルIPアドレスが固定的に割り振られているのでhttp://11.22.33.44/のように入力して接続することもできますが、たいていの場合はそのようにしてWebサイトにアクセスしません。

このwww.example.comと11.22.33.44の紐付け、つまり前者のアドレスにアクセスした際に後者の宛先IPアドレスにアクセスさせるように宛先IPアドレスを検索することを名前解決と呼び、名前解決はDNSサーバーによって行われます。

DNSサーバーにはお名前ドットコムやAWSのRoute53などがあります。

画像2



この記事が気に入ったらサポートをしてみませんか?