Azureアーキテクチャガイドまとめ 2【N層】

はじめに

Azureクラウドアプリケーションアーキテクチャガイド より、7つあるアーキテクチャスタイルの一つ、N層アーキテクチャに関してまとめます。

※前回記事

Azureアーキテクチャガイドまとめ 1 【はじめに】

概要

N層アーキテクチャと呼ばれるもの中で代表的なものが、以下の三層アーキテクチャです。

・プレゼンテーション層

・中間層

・データ層

下記の例では、中間層が二つ(Middle Tier 1 / Middle Tier 2)あり、別々の機能を持たせています。名称はとっつきにくいですが、よく見るような一般的な構成です。

以下のような特徴を持つアプリケーションに適したアーキテクチャスタイルです。

・単純なWebアプリケーション

・オンプレアプリをAzureに最小限のリファクタリングで移行

・オンプレアプリとクラウドアプリの統一的開発

特徴は以下の通り。

・一般的なIaaSアプリとしての実装

・レイヤー

-論理レイヤーと物理レイヤーに分断し、責任を分離し、依存関係を管理する

-上位レイヤーは下位レイヤーのサービスを利用可。逆は不可

・2種のアーキテクチャ

-クローズドレイヤー (直下のレイヤーのみを呼び出し可)

-オープンレイヤー (下のすべてのレイヤーを呼び出し可)

利点

・オンプレ/クラウド間の移植性が高い

・エンジニアにとって学習コストが低い

・異種混在環境(Windows/Linux)への適合性が高い

課題

・各機能の独立展開不可

・管理コストが高い

・大規模システムのセキュリティ管理が難しい場合あり

・中間層が無意味に待ち時間を増やす場合あり

ベストプラクティス

スケーラビリティ、信頼性、セキュリティの各層の境界としてサブネットを活用し、以下のマネージドサービスを利用する

・キャッシング

・オートスケール

・ロードバランサ

・メッセージング

-各層の分離に非同期メッセージングを使用

・データストレージ

-アクセス制限のため、中間層からの要求だけ許可

-高可用性実現のため、可用性グループを使用

対応するAzureサービス

各層のコンピューティングにVirtual Machineを利用し、マネージドサービスを追加していく形です。アイコンと一緒に覚えてしまいましょう。

まとめ

N層アーキテクチャの特徴と、使用されるサービスについて見ていきました。次回はWebキューワーカーについてまとめます。お楽しみに!

参考リンク

Azureアーキテクチャセンター

Azureクラウドアプリケーションアーキテクチャガイド ダウンロードページ

この記事を書いた人

azure-recipe-user