サーバー構成

アプリケーションの公開に向けてサーバーの準備をしよう

概要

サーバーとはクライアントの要求に対してさまざまな機能を提供する、ネットワークに繋がったコンピューターのことです。サーバーがクライアントとやり取りするには、ネットワークで繋がっている必要があります。

サーバーには、Webサーバーアプリケーションサーバーデータベースサーバーといった役割があります。この3つで構成されているWebアプリケーションの構成をWeb3層構成と呼びます。

各サーバーには、役割に応じたサーバーソフトウェアがインストールされています。WebサーバーのサーバーソフトウェアにはApacheNginxなどがあります。同様に、アプリケーションサーバーにはPumaTomcat、データベースサーバーにはMySQLPostgreSQLなどがあります。開発環境では、1台のコンピューターに3つのサーバーソフトウェアをインストールする場合もありますが、本番環境ではそれぞれ別のコンピューターを用意するのが一般的です。

ユーザーがWebアプリケーションにアクセスしたとき、サーバーではどのような処理が行われているか見てみましょう。
まずは、トップページのような静的なページについてです。この場合はWebサーバーがリクエストを受け取り、用意されたHTMLファイルをレスポンスします。
次に、ログイン後のユーザー情報のように、ユーザー毎に表示内容が変わる動的なページについてです。この場合は、Webサーバーを経由してアプリケーションサーバーへリクエストが届きます。アプリケーションサーバーは必要に応じてデータベースサーバーからデータを取得して計算を行い、その結果をWebサーバー経由でレスポンスします。

サーバー構成

学ぶ目的

Webアプリケーションの公開のために必要となるサーバーの役割やスペック、調達方法を決められるようになりましょう。

WebアプリケーションはWeb3層構成の上で運用する形が一般的ですが、システムの規模や目的によってはメールサーバープロキシサーバーなども組み合わせる必要があります。必要なサーバーソフトウェアをどのコンピュータにインストールするかは、システム全体の仕様と設計に従って行います。

各サーバーのスペックや台数を決めるためには、想定されるユーザー数や必要となる処理能力を試算する必要があります。基本的なスペックの基準となるメモリCPUストレージについても押さえておきましょう。

それぞれのサーバーの役割を良く理解し、アプリケーションの公開に向けて必要なサーバー構成を実現できるようになりましょう。

ここから学ぼう

サーバーの構築や設定をするためには、その仕組みへの理解が必要です。ここでは、実作業の前に仕組みについて学んで、全体像のイメージを掴みましょう。

  • OSの基本機能について学ぼう

    メモリ管理方式について学ぼう

    タスク管理方式について学ぼう

    データ管理方式について学ぼう

  • コンピュータハードウェアの構成と動作原理について学ぼう

    CPU/MPU/GPU、オペランド、クロックなどプロセッサについて学ぼう

    RAM/ROM、キャッシュなどのメモリの種類と特徴について学ぼう

おすすめ教材

  1. 新人エンジニアのためのインフラ入門(Think IT Books) - インプレスブックス

今日学ぶことをシェアしよう