Webやアプリの仕組みを学び始めると、「プロセス」「リクエスト」「レスポンス」といった用語に必ず出会います。
この記事では、YouTubeを例にしながら、クライアントとサーバーの関係を起点に、プロセス・リクエスト・レスポンスの基本をわかりやすく解説します。
1. 前提条件
まずはクライアントとサーバーの関係を理解しましょう。
クライアントとサーバーの関係は、日常の会話に例えるとわかりやすいです。
-
クライアント:お願いする側
- 例:スマホやパソコンで「このページを見たい」「この動画を流したい」と指示する側
-
サーバー:応える側
- 例:その指示を受け取り、必要な情報やデータを用意して返す側
より詳しい解説は、以下の記事も参考にしてみてください。
2. プロセスとは
前段で説明したクライアントとサーバーの関係は、実際にはプロセスが動いているから成立しています。
プロセスとは、コンピュータの中で実行中のプログラム のことです。
- 例(YouTubeの場合)
- クライアント側:あなたがスマホやPCでYouTubeを開くと、ブラウザやアプリのプロセスが動き出し、操作を伝える準備をします。
- サーバー側:YouTubeのシステムでは、動画配信や検索を処理するプロセスが常に起動し、世界中の利用者からの操作に応える準備をしています。
つまり、クライアントとサーバーがやり取りできるのは、 お互いのコンピュータでプロセスが動いているからなのです。
3. リクエストとは
リクエストとは、クライアントがサーバーに送る「お願い」のことです。
前段で登場したクライアントは、ただ存在しているだけでは意味がありません。
自分が「何をしたいのか」をサーバーに伝える必要があります。
その伝達手段こそがリクエストです。
- 例(YouTubeの場合)
- あなたが検索欄に「猫の動画」と入力して検索ボタンを押す
- その「猫の動画を見せて!」という要求がリクエストとしてサーバーに送られる
ポイントは、クライアントがやりたいことをサーバーに伝える合図がリクエストであるということです。
4. レスポンスとは
レスポンスとは、サーバーがクライアントに返す答えのことです。
前段でクライアントはリクエストをサーバーに送りました。
そのお願いに対して、サーバーが処理を行い、結果を返してくれるのがレスポンスです。
- 例(YouTubeの場合)
- クライアントが「猫の動画を見たい」と伝える
- サーバー側のプロセスが検索を行い、条件に合う動画のリストを準備する
- その動画一覧がレスポンスとして返ってきて、画面に表示される
ポイントは、リクエストに対してサーバーが返してくる結果がレスポンスであるということです。
5. 3つの関係性
ここまでの内容を整理すると、次のような流れになります。
- クライアントが「やりたいこと」を伝える(リクエスト)
- サーバーのプロセスがその内容を処理する
- サーバーが結果を返す(レスポンス)
この3つがつながることで、私たちは普段使っているサービスを利用できています。
6. まとめ
クライアントは「お願いする側」、サーバーは「応える側」。
その間でプロセスが動き、リクエストとレスポンスの流れがあることで、私たちは普段のサービスを利用できています。