インフラ

リアクティブプログラミング

イベントが起こるたびに“そのときだけ動く”スタイル。学校でチャイムが鳴ったら休み時間スタート、とか通知が来たらすぐに処理するみたいに、ずっと待機しつつ反応する。これでリソースを効率的に使いつつ、すぐ応答できるんだ。
インフラ

マイクロバッチ処理

大量データをちょっとずつ頻繁にまとめて処理する方法。たとえば“10秒ごとに一定量だけ集めて集計する”みたいに、小さなバッチを連続で回す。大きな洗濯物を一回で洗うのがきついなら、小分けにして何度も洗う感じでリアルタイムに近づけるんだ。
インフラ

APIゲートウェイ

外部からの問い合わせを受け取り、内部のサービスに分配する“総合窓口”。例えばアプリが「商品情報を教えて」と言えば、それを受け取って商品データベースへ尋ねる。サービスの数が増えてもゲートウェイが窓口として整理してくれるから、外部から見るとアク...
インフラ

WebSocket

Webブラウザとサーバーが“一度つないだら継続的にやり取り”できる仕組み。チャットアプリで、サーバーが新メッセージをプッシュ通知してくれる感じ。普通のHTTPだとクライアントが毎回「ありますか?」と聞くけど、WebSocketは「届いたらす...
インフラ

ステートレス

サーバー側が利用者の状態(ログイン情報など)を覚えず、リクエストごとに完全に独立して処理する考え方。たとえばお店の店員が毎度「こんにちは、お名前は?」と聞いて調理するスタイル。ユーザー情報を持たないぶん、どのサーバーに行っても対応できるから...
インフラ

セッション管理

Webアプリで「誰がログイン中か」を覚えておく仕組み。例えば、お店に入ったお客さんに番号札(セッションクッキー)を渡して、注文を取るときに札で認識するイメージ。これがないと「あなた誰?」と毎回最初から聞かれちゃうから、ログイン状態を続けるの...
インフラ

マルチAZ(Multi-AZ)

クラウドデータベースなどで、離れた場所にいる2つの建物(データセンター)に同時にデータを書いておき、どちらかが壊れてももう一方が健全なら続けられる仕組み。地震が起きても別の建物が無事ならサービスダウンを防げるんだ。
インフラ

シャーディング

巨大なデータベースを、ユーザーIDや日付などの基準で複数に分割して保管する手法。たとえば名簿を「1組」「2組」で分ける感じ。1つの机に全部積むと重くなるけど、分けて持てばアクセス負荷も軽くなる。大規模サービスではよく使われるテクニックなんだ...
インフラ

レプリケーション

データを複数台にコピーし、どれか1台が壊れても大丈夫なようにする仕組み。家にある大事な写真をUSBメモリやクラウドにも保存しておく感じ。読むときは好きなコピーを使えるし、どれかを編集すると他にもその変更を反映させることで整合性を保つんだ。
インフラ

マスターサーバー/スレーブサーバー

1台を“先生(マスター)”としてデータ更新の中心に置き、他のサーバー(スレーブ)が先生の内容をまねる仕組み。学校の先生のノートをみんなが同じに書き写すイメージ。これで読み込み負荷を分散しながら、データは同期が保たれるんだ。