サーバーは、ネットワークを通じてほかのコンピューターへデータや機能を提供するコンピューターまたはソフトウェアです。Webサイトの表示、メール送受信、ファイル共有、データ保存などを支えています。
サーバーとは
英語のserveには「提供する」という意味があります。サービスを要求する側をクライアント、要求に応じて提供する側をサーバーと呼びます。
サーバーという言葉は二つの意味で使われます。
- サーバー機:処理を実行する物理・仮想コンピューター
- サーバーソフトウェア:Web配信やデータベース処理などを提供するプログラム
1台のコンピューターで複数のサーバーソフトウェアを動かすことも、1つのサービスを多数のコンピューターへ分散することもあります。
Webサイトが表示される仕組み
ブラウザでURLを開くと、おおむね次の流れが起こります。
- ドメイン名から接続先のIPアドレスを調べる
- ブラウザがWebサーバーへHTTPリクエストを送る
- サーバーがHTML、画像、データなどを用意する
- HTTPレスポンスとしてブラウザへ返す
- ブラウザが内容を画面へ描画する
ログインや商品検索があるサイトでは、Webサーバーがアプリケーションの処理を呼び出し、データベースから情報を取得することもあります。
アプリとの関係
スマートフォンアプリの一部は端末内だけで動きますが、アカウント同期、コンテンツ配信、購入確認、通知などにはサーバーが使われます。
アプリがAPIへリクエストを送り、サーバーが認証や処理を行って結果を返します。端末側をフロントエンド、サーバー側をバックエンドと呼ぶことがあります。
主なサーバーの種類
- Webサーバー:Webページやファイルを配信する
- アプリケーションサーバー:業務ルールや計算を実行する
- データベースサーバー:データを保存・検索・更新する
- メールサーバー:メールの送受信を処理する
- ファイルサーバー:組織内でファイルを共有する
- DNSサーバー:ドメイン名とIPアドレスを対応付ける
実際のクラウドサービスでは、これらが複数の管理サービスに分かれている場合があります。
自社サーバーとクラウド
自社施設へ機器を置くオンプレミスでは、機器、電源、ネットワーク、OSなどを自社で広く管理します。クラウドでは、提供会社の設備を使い、仮想サーバーや実行環境を必要に応じて利用できます。
クラウドでも、アカウント管理、OS更新、アプリの脆弱性対策などが利用者の責任になるサービスがあります。契約ごとの責任範囲を確認します。
安定運用に必要なこと
- CPU、メモリ、ディスク、通信量を監視する
- 障害を検知して担当者へ通知する
- セキュリティ更新を適用する
- バックアップを取得し、復旧テストを行う
- 1台が故障しても継続できる冗長化を検討する
- アクセス増加に応じて処理能力を調整する
サーバーが起動しているだけではサービスが正常とは限りません。利用者が重要機能を実行できるかまで監視することが大切です。
まとめ
サーバーは、クライアントへデータや機能を提供するコンピューターまたはソフトウェアです。Webサイトやアプリはサーバー、API、データベースなどを組み合わせて動きます。運用では性能だけでなく、監視、更新、バックアップ、障害対策が必要です。