バックエンドサーバ — 「何を返すか」を考える頭脳

初級の解説は準備中のため、初級の内容を表示しています。

概要 — まず全体をつかむ

フロントが「顔」なら、バックエンドは「頭脳」。表には出ませんが、「何を返すか」を考えて決めるのがバックエンドサーバです。

詳細 — 1段階ずつ追う

これは何をする係?

厨房のシェフにたとえられます。ホール(フロント)から注文(※1 API)を受け、材料(DBのデータ)を出し入れして、料理(返すデータ)を作る。判断・計算・データの指示が仕事です。

サーバ機器
サーバ — 要求に応えるコンピュータ

大事なのは、動く前に2つを確かめること:

  • 認証(※2) — そもそも「誰か」を確かめる(ログインしているか)
  • 認可(※3) — その人が「その操作をしてよいか」を決める(権限)

登場人物メモ:

  • ※1 API — フロントとバックの会話の窓口。決まった形でお願いして、決まった形で返す約束
  • ※2 認証 — 本人確認(あなたは誰?)
  • ※3 認可 — 権限の確認(あなたはこれをしてよい?)

仕事の流れ

  1. フロントから API でお願いを受ける
  2. 認証を確認(ログインしているか)
  3. 認可を確認(その操作をしてよいか)
  4. 中身のロジックを実行(計算・判断)
  5. 必要なデータを DB・キャッシュ・ストレージに出し入れする
  6. 結果を決まった形にまとめてフロントへ返す
アニメーション『バックエンド=何を返すか考える頭脳』を開く
バックエンドサーバ=「何を返すか」を考える頭脳リクエスト受信フロントからのお願いを受ける処理認可チェック(してよい操作か)ビジネスロジック(判断)計算・組み立てレスポンス組み立てて返す必要なデータを取得するDB構造データキャッシュ高速な一時メモ他サービス外部API画面(フロント)ではなく、データと判断を扱う裏方

重い処理は後回し

すぐ返せない重い処理(メール送信・大量集計など)は、その場でやると待たされます。そういうものは「後でやるリスト(キュー)」に積んで、返事だけ先に返す——これが非同期処理です。

⚠️ うまくいかないとき

  • 403(権限なし) — 認証はOKだが認可で止められた
  • 500(内部エラー) — バックの処理そのものが失敗した
  • 遅い — DBへの問い合わせが重い/多すぎる(後述のキャッシュで軽くする)

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. 「ログインはしているが、他人の投稿を削除しようとして断られた」。これはどれの働き?

2. バックエンドサーバがやっていることに最も近いのは?

3. 「そもそも誰か(ログインしているか)」を確かめる働きはどれ?

4. メール送信や大量集計など、その場でやると待たされる重い処理を「後でやるリスト」に積んで、返事だけ先に返すやり方を何という?

5. バックエンドの処理そのものが失敗したときに近いエラーはどれ?

6. バックエンドの応答が「遅い」とき、主な原因として近いのはどれ?

7. フロントとバックが「決まった形でお願いし、決まった形で返す」会話の窓口を、英字3文字で何と呼ぶ?

8. 「そもそも誰かを確かめる(ログインしているか)」ことを、漢字2文字で何と呼ぶ?