【Web技術】ネットワーク用語を✅

筋トレして勉強して飯食って銭湯入る生活が一生続けば良いのにと常々思っている23期酒ケジュール改修中です。


今回は、Web技術の学習、特にネットワークの仕組みを復習していきたいと思います。

 

Webブラウザにデータが表示されるまでに起こっていること

アプリを作成していて、どのようにデータがやり取りされるかを今一度理解しておきたい。

1 クライアントがサイトにアクセスする

⇨クライアントとサーバ

2 データを要求する

⇨ネットワーク

3 サーバが色々処理する

⇨サーバ

4 クライアントにサーバがデータを送り返す

⇨サーバとネットワーク

5 受け取ったデータを画面に表示する

⇨ネットワークとクライアント

コンピュータ

ハードウェアとソフトウェアに分けることができる

ハードウェア

手にとって触れる機会、パソコンやスマートフォンタブレットなど

ソフトウェア

物理的に触れられないもの。

プログラミングを指す。OSやアプリケーションのこともさす。

OSとは、オペレーティングシステムの略。

アプリケーションとは、特定用途のために作られたものを指す

アプリケーションを作るには、プログラミング言語が必要になる。

プログラミング言語を効率よく使うための共通部品、ライブラリが存在する

  • 種類

    Facebookでログインするための部品

    Swiftで書かれた画像加工の共通部品

    検索機能を実装するための部品

ライブラリは、フレームワークの中に存在する。

クライアント

  • クライアントとは

    リクエストを送る役割のコンピュータや携帯のこと。

    こういうデータを送り返してほしいという依頼主を指す。URIにHTTPリクエストを記述してサーバにデータのリクエストを送っている。

具体的なクライアント

webにリクエストを送るブラウザをWebブラウザという

Internet Explorer

Safari

Chrome

Firefox

サーバ

リクエストを受け付けてレスポンスを返す役割を持つアプリケーションやコンピュータ

レスポンスとは

クライアントからの欲しい情報リクエストに対して応答すること

リクエストに応じて4つ種類がある

  • WEBサーバ

    APサーバ

    DBサーバ

    検索サーバ

WEBサーバ

クライアントからリクエストを受け付けてWebページや画像を返すサーバを指す。

あらかじめ用意しておいた、ページや画像ファイルなどの静的ファイルを送り返す役割を持つ。

  • NginX

    Apache HTTP Server

APサーバ

Webアプリケーションを動かすためのサーバ

リクエストに応じて内容が変化する動的ページを返す。

application.html.erbに書かれたページの<%= render %>部分がそうなのかも。同じレイアウトでも、ユーザーによって違うページを返す

DBサーバ

データを保存したり取り出したりする。

検索サーバ

大量のデータの中から索引する。

DBサーバからのリクエストに対して、ここにデータがあるよといったレスポンスを返す。

  • Elasticsearch

    Solr

クライアントがデータをリクエストしたときの流れ

クライアント⇨webサーバ→

APサーバ→検索サーバ→

APサーバ→DBサーバ→

APサーバ→webサーバ⇨クライアント

補足

webサーバは静的ファイルを作成している

動的ファイルはAPサーバが作成してレスポンスしている

ネットワーク

複数のコンピュータを繋いでデータを送受信するもの

コンピュータ同士をケーブル中継器で繋いている

技術基礎研修「クックパッドを支える仕組み」 / Introduction to the Internet