初めに
現在 AWS CloudTech でAWSについて学んでいますが、AWSについて学ぶ前に「サーバとは」について纏めようと思い本記事を作成しました。こちらの記事に対して、質問や間違っている点などありましたら是非コメント頂けたら嬉しいです。
1.サーバとは
サーバという用語について誰しも一度は聞いた事があるかもしれないですが、一言でサーバといっても実際は複数の種類のサーバが存在します。例えば身近な例でいうと以下のような物。
- インターネットで何か調べたい物がある時に情報を提示してくれるWebサーバ
- 家族や友人などとメールの送受信をする時に利用されるメールサーバ
- 情報を蓄積・管理を行うデータベースサーバ
今回は上記3つの中で、Webサーバとデータベースサーバの仕組みについて深堀していきます。
1-1.Webサーバへのアクセス
最初に例としてYahooのWebサーバにアクセスしてみます。
1.ブラウザを開いてyahooと検索し、以下赤枠の箇所をクリックする。
2.YahooのWebサイトにアクセス出来る事を確認します。
これで貴方はYahooのWebサーバにたどり着きました。より厳密にいうとWebサイトのソースコードを格納しているサーバにアクセスしている事になります。
3.次に右クリックを実行して「ページのソースを表示」を実行します。
何やら恐ろしい文字列が表示されましたが、これが先ほどの手順2のWebサイトの画面を表示する際に使われているプログラムになります。
まぁ、こちらも厳密にはHyper Text Markup Languageとプログラミング言語では少々意味が異なるのですが、今回の例では一括して以下のように覚えて貰えればOKです。
- プログラム : Webサイトの画面を表示する際に使われている恐ろしい文字列
- Webサーバ : Webサイトのプログラムを格納しているサーバ
1-2. Webサーバへのアクセスの仕組み
先程実際にYahooのWebサーバにアクセスしましたが、今回は我々には見えない所で行われていた事について解説していきます。以下の図を参照下さい。
ここから上記の図の流れについて1つずつ紐解いていきます。上記の通り今回YahooのWebサーバにアクセスする際のURLの欄(1-1-2.赤枠箇所)にyahoo.co.jpと表示されていましたがこの文字列をドメインと言います。
このドメインを利用して普段私達はWebサーバにアクセスしているのですが、実はこのドメインとはIPアドレスというサーバの住所を人間に分かりやすくした物になります。何故こんな面倒臭い事になっているのかについては以下を見て下さい。
yahoo.co.jp ⇄ 183.79.135.206
上記のyahoo.co.jpと183.79.135.206のどちらをURL欄に入れて検索を実行しても、YahooのTOPページにアクセスする事は出来ます。但し2つを対比した際にどちらがYahooのサイトの物か分かりやすいかについては、間違いなく前者のドメインかと思います。
- 人間にとってはドメインの方がアクセス先を判断しやすい
- 一方でコンピューターはIPアドレスでしか判断出来ない
この問題を解決する為に先ほどの図の①と②の仲介を行なっています。そしてこの問題を解消してくれる物をDNSサーバと呼び、これもまたユーザーがドメインでアクセスした時にコンピューターに理解出来るようIPアドレスに変換を行うサーバの1種です。
1-3.データベースサーバ とは
次にデータベースサーバについて解説していきます。こちらからAmazon会員登録画面にアクセスして下さい。
こちらもYahooの時と同様の仕組みでAmazonのWebサーバにアクセスしていますが、今回の場合はユーザーが入力したアカウント情報をサーバ側で保存する必要があります。この情報を保存する時に利用されるのがデータベースサーバになります。
具体的にWebサーバとデータベースサーバのやり取りは上記のようなイメージで、会員登録画面で入力されたユーザー情報をデータベースサーバに保存します。また登録されているユーザ情報を抽出する時もデータベースサーバから情報を抽出します。
ざっくりと解説しましたが、以上がサーバについての解説となります。
終わりに
今回はサーバを中心に解説しておりネットワークについてはあまり触れていませんが、以前こちらの記事でネットワークについても解説しているので良かったら読んでみて下さい。またTwitterもやっているので是非絡んで貰えると嬉しいです。それではまたどこかで 以上。