システムを構成するサーバーの種類

記事のねらい

  • システム開発におけるサーバーを大まかに整理する
  • 3階層型アーキテクチャのサーバーの種類を整理する
  • 参画するプロジェクトで扱うシステムについて理解しやすくする

サーバーとは?

分割型アーキテクチャ(複数のコンピュータを組み合わせて1つのシステムを構築する仕組み)で利用されるコンピュータ。コンピュータそのものを指すこともあり、コンピュータで動くソフトウェアを指すこともある。前者の場合は物理サーバーと言う。

※分割型アーキテクチャには垂直分割型アーキテクチャと水平分割型アーキテクチャがあり、垂直分割型アーキテクチャには、クライアント・サーバ型アーキテクチャや3階層型アーキテクチャがある。

※物理サーバーは仮想化やクラウドを利用する場合、仮想サーバーが相当する。

サーバーの種類と役割(3階層型アーキテクチャの場合)

  • Webサーバー
    クライアント(PC)のWebブラウザからの要求(リクエスト)により、静的コンテンツ(HTML、画像など)と動的コンテンツを提供する。動的コンテンツはAPサーバーに要求する。
    主な製品:Apache HTTP Server, IIS, Nginxなど

  • APサーバー(アプリケーションサーバー)
    Webサーバーからの要求により、アプリケーションや動的コンテンツ(掲示板の書き込みなど)を提供する。データベースへの接続が必要な場合、DBサーバーに要求する。
    ※DBサーバーへの要求はSQLで行われる。
    主な製品:Cosminexus Application Server, JBoss, Tomcat, WebLogic Server, WebSphere Application Server, Interstage Application Serverなど

  • DBサーバー(データベースサーバー)
    APサーバーからの要求で受け取ったSQLを解析し、データアクセス方式を決定し、キャッシュメモリやディスクから必要なデータを集め、APサーバーに提供する。
    ※データベースが配置されたサーバー。
    主な製品:Oracle Database, MySQL, PostgreSQL, SQL Server, DB2, Symfoware Serverなど

※システムによってはWebサーバーとAPサーバーが統合されていたり、Webサーバーがなかったりする。

まとめ

  • システムを構成する複数のコンピュータを単体でサーバーと呼ぶ
  • サーバーにはWebサーバー、APサーバー、DBサーバーがある
  • データの流れはクライアント→Webサーバー→APサーバー→DBサーバー→APサーバー→Webサーバー→クライアント

参考資料

山崎泰史(2019)『絵で見てわかるITインフラの仕組み 新装版』 翔泳社
Webの仕組みとWebサーバの構造:ApacheによるWebサーバ構築(2)(1/2 ページ) - @IT (atmarkit.co.jp)
ITインフラの全体像を理解しよう | Think IT(シンクイット)
ミドルウェア(Web、AP、DB)について知ろう | Think IT(シンクイット)