EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

抄録:『絵で見てわかる ITインフラの仕組み 新装版』 ITインフラのキホン:まずはインフラアーキテクチャーを見てみよう【前編】

  2020/09/07 15:00

1.3 垂直分割型アーキテクチャ

 分割型においては、サーバーの分割方式、すなわち役割分担を考える必要があります。複数のサーバーでまったく別のことを実施するのか、または似たようなことを実施するのかという観点です。

 本節では、サーバーごとに別の役割を担う形とする、「垂直分割型アーキテクチャ」を紹介します。垂直型と記しているのは、特定のサーバーから見たときに、別の役割を持つものは「上」や「下」のレイヤーに位置するという考え方に基づいています。

1.3.1 クライアントサーバー型アーキテクチャ

 クライアントサーバー型は、垂直分割型の1つの例です。図1.6のように、業務アプリケーション、ミドルウェア、データベースなどのソフトウェアをそれぞれ「物理サーバー」で動かします。

 それらのソフトウェアに対して、「クライアント」または「端末」と呼ばれる小型コンピュータからアクセスし、利用する形となります。クライアントとサーバーは、「クラサバ」やClient/Serverの頭文字を取って「C/S」とも呼ばれます。

図1.6 クライアントとサーバーの役割分担
図1.6 クライアントとサーバーの役割分担

 クライアントサーバー型の特徴は、クライアント側に専用ソフトウェアをインストールする必要があることです。クライアント(端末)には主にPCが利用されますが、最近ではスマートフォンやタブレットも端末となり得ます。

 たとえば、株式売買システムでは、グラフ表示や株価の傾向分析はPCで実施し、必要に応じてサーバーから株価データを取得する方式が多いです。この方式では、サーバー側はデータの入出力のみを実施すればよいため処理1件当たりの負荷が少なく、多くのPCからのリクエストを同時にさばくことが可能となります。

 しかし、特に企業のITシステムでは、業務アプリケーションの機能追加やバグ修正などで、必ず定期的な更新(アップデート)が必要となります。クライアントサーバー型では、業務アプリケーション変更のたびに、クライアント側のソフトウェアのアップデートも生じます。

 皆さんのPC上でも、Microsoft社のWindows UpdateやOracle社のJavaのアップデートがあると思いますが、面倒に感じてスキップしたことはありませんか? 利用者から見ると使い勝手が悪くなりますし、必ずしも利用者がアップデートしてくれるとは限らず、システムのリスクとなり得ます。

 また、サーバーに処理の多くが集中することで、拡張性に限界が生じる可能性があります。これらのデメリットを改善しようとしたのが、次に紹介する3階層型です。

■メリット
  • クライアント側で多くの処理を実行できるため、少数のサーバーで多数のクライアントを処理できる
■デメリット
  • クライアント側のソフトウェアの定期アップデートが必要
  • サーバーの拡張性に限界が生じる

1.3.2 3 階層型アーキテクチャ

 3階層型は、垂直分割型のもう1つの例で、クライアントサーバー型を発展させたものです。図1.7のように「プレゼンテーション層」「アプリケーション層」「データ層」の3層に分割されていることから、3階層型と呼ばれます。

図1.7 3階層でのサーバーの役割分担
図1.7 3階層でのサーバーの役割分担

 それぞれの層の役割は明確に分かれています。

プレゼンテーション層

  • ユーザーからの入力を受け取る
  • Webブラウザ向けの画面表示を行なう

アプリケーション層

  • ユーザーからのリクエストに応じて、業務処理を行なうデータ層
  • アプリケーション層からのリクエストに応じて、データの入出力を行なう

 3階層型システムでは、ユーザーはWebブラウザからシステムにアクセスします。たとえばインターネット検索システムでは、ユーザーがWebブラウザに入力した画面は、まずプレゼンテーション層のWebサーバーに送られます。

 Webサーバーはそのリクエストを、後ろのアプリケーション層にいるアプリケーションサーバー(APサーバー)に渡します。APサーバーが検索キーワードをもとに何を検索すべきか判断し、後ろのデータ層にいるデータベースサーバー(DBサーバー)に対してデータをリクエストします。この処理の流れは、第3章でもう少し詳しく紹介します。

 クライアントサーバー型と比較してのメリットは、特定のサーバーへの負荷の一極集中がなくなったことが挙げられます。また、業務アプリケーションの更新に伴うクライアントのアップデートが必要ではなくなり、ユーザーはWebブラウザを準備するだけでよくなります。

 それに、このアーキテクチャでは、すべての処理がAPサーバーやDBサーバーを必要とするわけではありません。たとえば、画像ファイルを読むだけであればWebサーバーのみで処理が完結するため、そこで処理を折り返すことで、ほかのサーバーに負荷を与えません。

 ただし、システム全体の仕組みとしては、クライアントサーバー型よりは複雑であると言えます。

■メリット
  • サーバーへの負荷集中の改善
  • クライアント端末の定期アップデートが必要ない
  • 「折り返し」によるサーバー負荷低減
■デメリット
  • 仕組みがクライアントサーバー構成より複雑となる

 皆さんが今日利用しているインターネットサイト、スマホ/携帯サイト、社内業務システムの多くは、この3階層型アーキテクチャ、またはその発展系を採用しています。

 エンジニアとして日々活躍されている方は業務で扱い慣れていることでしょう。本書でも、3階層型アーキテクチャを基本形として、さまざまなアルゴリズムや特性について説明していきます。

絵で見てわかるITインフラの仕組み 新装版

Amazon  SEshop  その他


絵で見てわかるITインフラの仕組み 新装版

著者:山崎 泰史、三縄 慶子、畔勝 洋平、佐藤 貴彦 著、小田 圭二 監修
発売日:2019年06月19日
価格:2,618円(税込)

本書について

本書では、普遍的な常識をもとに、ITインフラという領域全体を、ミクロ、マクロの視点で、わかりやすいように絵(図)で説明します。ITインフラの常識(=勘所)をつかむことで、よりITシステムに対する理解が深まり、専門外または新しい技術に出会ったときにその本質を理解するための基礎力が身につくはずです。



関連リンク

著者プロフィール

  • EnterpriseZine編集部(エンタープライズジン ヘンシュウブ)

    「EnterpriseZine」(エンタープライズジン)は、翔泳社が運営する企業のIT活用とビジネス成長を支援するITリーダー向け専門メディアです。データテクノロジー/情報セキュリティの最新動向を中心に、企業ITに関する多様な情報をお届けしています。

バックナンバー

連載:翔泳社の本

もっと読む

All contents copyright © 2007-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5