9章テナント分離
さまざまなマルチテナントアーキテクチャの構造やパターン、戦略について説明する中で、テナント分離という概念に言及してきました。これまでにこのトピックを取り上げたときは、あるテナントが別のテナントのリソースにアクセスできないようにするために分離がどのように適用されるかという、抽象的かつ概念的なものでした。それでは、いよいよテナント分離の詳細を掘り下げ、SaaSアーキテクチャのさまざまなレイヤーに分離を適用するための具体的な仕組みを見ていきましょう。
この章では、テナント分離の細かな違いを一連の用語やパターン、プラクティスに落とし込み、いつ、どのようにテナント分離の仕組みをアーキテクチャに導入すべきかを考えるためのより優れたフレームワークを提供することを目指します。まずは、テナント分離の役割と、テナント分離戦略を策定するためのアプローチを構成する基本的な概念を明確にすることから始めます。
そこから、テナント分離のレイヤー型の特性に目を向け、テナント間のアクセスを防止するための仕組みの導入を考えるべき、アーキテクチャ内のさまざまな領域を特定します。これにより、マルチテナント環境に含まれるさまざまな技術やインフラストラクチャ構造の分離モデルを作成する際に生じる微妙な違いや考慮事項をより深く理解できるようになります。また、さまざまなリソースのデプロイモデルに伴う課題や利点も明らかになり、マイクロサービスの分割やデータパーティショニングなど、これまで取り上げた他のトピックに関する選択を行うためのより多くのデータを得ることができます。
分離の取り組みでは、マイクロサービスとアプリケーションコードが分離ポリシーの適用においてどのような役割を果たすかを深く考えることが含まれます。個々のリクエストのテナントコンテキストを使用して、リクエストごとにテナントアクセスの範囲を設定および管理するさまざまなランタイム技術を見ていきます。また、実行時の分離ポリシーの適用に関連する設計上の考慮事項もいくつか取り上げます。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access