yuta_eng_prg’s diary

筆者がプログラミング学習の内容を綴るだけのブログです。

Webサーバソフト

クライアント側から、HTTP通信で送られ、ポートで受け取った「GETメソッド」等の解釈を行うのを「Webサーバソフト」と呼びます。

Webサーバソフトとして、

Apache・・・多くのWebサイトで使われている。

・nginx・・・高速で省メモリなWebサーバ。パフォーマンスを重視されるサイトで使われている。

IIS・・・Windows Server上のWebサーバ。.NET Frameworkで記述されたプログラムを実行できる。

以上のような種類があります。

どのWebサーバソフトでも、HTTP通信でやりとりを行なっているので動作に違いはありません。

ポート

TCP/IPでは、TCPUDPそれぞれに、1〜65535までの「データの出入口」となる「ポート」があります。

このポートが割り当てられている連番のことを「ポート番号」と言います。

あるアプリケーションが、一度一つのポートを使って通信すると、他のアプリケーションは同じポートで通信できないように排他制御されます。

このおかげでで、異なるアプリケーションのデータ等が混信することはありません。

TCPとUDP

インターネットで使われているTCP/IPトランスミッション コントロール プロトコル / インターネット プロトコル)というプロトコル(通信手段)には、通信相手に届くことを「保証する通信」と「保証しない通信」の2通りがあります。

「保証する通信」をTCPトランスミッション コントロール プロトコル)、「保証しない通信」をUDP(ユーザー データグラム プロトコル)と呼びます。

TCPは、保証する通信で、相手にデータが届いたか確認しながら送信し、エラーが発生した時には、再送します。

Web、メール、FTP(ファイル トランスファー プロトコル)など、ほとんどの通信でTCPが使われています。

UDPは、保証されない通信で、相手にデータが届いたか確認せずに送信し、エラーが発生しても再送しません。

エラーのチェックがない分高速に通信できるのが特徴です。

またUDPはネットワークに接続されている全ホストに対してデータを送信する「1対多」の通信もでき、これを「ブロードキャスト通信」と呼びます。

ドメイン名

IPアドレスは、「22,33,44,55」のように人間が覚えたり、使ったりするには、わかりにくい表記です。

実際は、「https://22,33,44,55/」のような数字で接続先を指定するのではなく、「https://yuta-eng-prg.hatenablog.com/」のようにわかりやすい文字列になっています。

このような「/yuta-eng-prg.hatenablog.com」の文字部分をドメイン名と言います。

ドメイン名「/yuta-eng-prg.hatenablog.com」で接続先を指定した後、DNSサーバに問い合わせを出し、IPアドレス「22,33,44,55」に変換してもらい、その後、IPアドレスを元に接続先のWebサーバに接続するという流れになります。

IPアドレス

IPアドレスは、インターネットにおける「電話番号」のようなもので、クライアントやサーバを特定できる値です。

サーバに割り当てられるIPアドレスは、サーバの契約をした時に、レンタルサーバ事業者、データセンター事業者、プロバイダなどから知らされ、設定されます。 基本的に、サーバに割り当てられるIPアドレスは、契約期間中に変わらない。 一度決めたIPアドレスが変わらないことを「固定IPアドレス」と言います。

クライアント(パソコン、タブレットスマホなど)に割り当てられるIPアドレスは、プロバイダなどから、接続のたびに割り当てられるので、その度に異なったIPアドレスが割り当てられます。 接続のたびに異なるIPアドレスのことを「動的IPアドレス」と言います。

クラウドとは?

クラウドクラウドサービス、クラウドコンピューティング)」とは、クラウドサービスプラットフォームからインターネット経由でコンピューティング、データベース、ストレージ、アプリケーションをはじめとした、さまざまな IT リソースをオンデマンドで利用することができるサービスの総称とのことです。

よくわかりませんが、今まで会社で何かしらのシステムを導入する際に、でっかい実物のコンピューターを購入していろいろと設定する必要があったのが、コンピュータを購入しなくても、アマゾンやマイクロソフト、グーグルからインターネット経由でレンタルしてきて設定することでシステムを導入できるということでしょうか?

きっと初期費用が少なくて良かったり、システムの大幅な変更にも柔軟に対応できたりする利点があるのではないでしょうか?

Cookieとセッション

Webサービスは複数のページから構成されていることがほとんどです。 その際、ページ間でのデータの共有が必要になる場合があります。 データの共有を行う上で、使われるのが、Cookieとセッションです。 Cookieは、クライアント側にデータを保存しておく仕組みで、サーバからデータを送信しておくことで、次回のアクセス時にサーバー側にそのデータを送信する機能です。 セッションは、サーバー側にデータを保存する仕組みのことです。