こんにちは!4月入社の加邉です。
IT業界に身を置くものとして最近考え事が多く、ふと「サーバーってなんだろう」などといったこの業界で働くうえで最低限知っておかなければいけないものが頭に浮かんだりします。
ということで、本ブログを使って最近勉強したサーバーについてざっくりとアウトプットできたらなと思い書きます!
サーバーって何?
ざっくりいうと…
「データやサービスを他のコンピューターに提供する側のコンピューター」のこと
サーバーもコンピューターなんですね。
このことに気づくまでデータベースとの違いすら分かっていなかったので、データベースとの違いもまとめてみました!
・サーバー:全体を支えるコンピューター
・データベース:情報を整理して保存しておく仕組み
サーバーの中に情報をしまっておくのがデータベースのようです。イメージ的には
本棚(サーバー)本(データベース)みたいな感じですね
サーバー自体はGoogle、Amazonのような企業が世界各地のデータセンターで所有しているものから、個人やオフィスのサーバーまで、いろいろなところにあるみたいで、コンピューターなので私たちの所有するPCもサーバーになれます。
また、クラウド上のサーバーのような物理的なサーバーの上で成り立つ仮想サーバーもあります。
AWSなどが最たる例ですね。
どうやって通信するの?
よく「サーバーが落ちた」みたいな言い方をしますが、私たちのスマートフォンやPCがサーバーと通信しているから分かることですよね
では実際に我々のPCとサーバーの間で何が起きているのか深掘ってみましょう
たとえば私たちがWebサイトにアクセスする時…
- 見たいサイトのURLを打ち込む(例:https://www.example.com)
みたいサイトのURLを打ち込むと、PCから家のルーターや無線(4G・5G)を通して、DNS(ドメインネームシステム)という所にドメイン(アクセスするサーバーの住所)が送られます。
2. DNSがドメインからIPアドレスを探す
IPアドレスはドメインと同じくサーバーの住所を表すものですが、こちらは数字の羅列となっているみたいです。
3.TCP接続の要求
DNSにより判明したIPアドレスを基に、PCからサーバーにTCP接続の要求を送る
4. サーバーが応答
サーバーがPCに「OK!TCP接続します」と返答
5. PCからHTTPリクエスト送信
ここでようやく見たい情報のリクエストがなされます。
6. サーバーからHTTPレスポンスを返す
サーバーがリクエストされた情報をPCに送ってくれます。
このような流れで、私たちは見たい情報が見れるわけですが、この一連の流れがほんの一瞬の間に起きているのがすごいですね!!
また、この一連の流れのことを”ネットワーク通信”と呼ぶみたいです。
まとめ
今回学んで驚いたのは…
”ネット上で何かをするとき、世界のどこかのサーバーと一瞬で会話しているという事実”です。
普段何気なく見ているWebサイトも、送ったメールも、クラウドで管理されているファイルも、
全部どこかのサーバーの力で成り立っているんですね。
これからもこんな感じで勉強したことのアウトプットができたらいいなと思います。
ここまで読んでくれた皆さん ありがとうございました。
コメント