読もうよもうとずっと思っていた「マルチテナントSaaSアーキテクチャの構築」、このままだと読み終えなそうなので、ひとまず読んだところと刺さった部分を箇条書き式にまとめる。
マルチテナントSaaSアーキテクチャの構築 ―原則、ベストプラクティス、AWSアーキテクチャパターン | Tod Golding, 河原 哲也, 櫻谷 広人 |本 | 通販 | Amazon
各章のメモ書き
SaaS マインドセット
アプリケーションアーキテクチャを正しく構築することは確かにSaaSモデルの重要な部分ですが、SaaSビジネスの成功はこれらの周辺コンポーネントの機能に大きく左右されます。これらの機能は、企業がSaaSモデルを採用する動機となっている運用効率、成長、イノベーション、俊敏性の目標の多くを実現するための中核となるものです。つまり、SaaSソリューションを構築する際には、すべてのSaaS環境に共通するこれらのコンポーネントを最優先で考慮しなければなりません
SaaSの本質はビジネスモデル
マルチテナントのデプロイモデル
デプロイモデルを比べると、あるモデルに決定する要因がいくつかあることは明らかです。レガシー、ドメイン、コンプライアンス、拡張性、コスト効率、その他多くのビジネス上および技術上のパラメーターを使用して、チームやビジネスの要件に最適なデプロイモデル(または複数のデプロイモデルの組み合わせ)を判断します
テナントの認証とルーティング
基本的な目標は、「1章 SaaSマインドセット」から「5章 テナント管理」で確立した基盤に基づいて、SaaS環境を実現させる次のレベルに進むこと
マルチテナントサービスの構築
マルチテナント環境では、ノイジーネイバーがさまざまな形で現れることがあります。環境内には、待ち時間が長かったり、ボトルネックになる可能性が高いパターンでリソースを消費したりする特定の操作があるかもしれません。特定のテナントのペルソナが、システムの一部である特定のサービス群を飽和させやすい傾向があるかもしれません。
全体的に見ると、マルチテナントはサービスの設計と実装の両方に大きな影響を与える可能性があるということです。設計段階では、テナントの利用傾向やマルチテナント要件の動的に変化するとらえどころのない特性を予測することが重要です。サービスにおいては、ビルダーの体験や生産性を損なうことなく、中核となるベストプラクティスを確実に実践する方法を考えることに集中しましょう。
テナント分離
分離には万能のアプローチがないことは明らかなはずです。多くの環境では、システムのさまざまなコンポーネントに適用される分離戦略を決定するために、ビジネスと技術に関する考慮事項を組み合わせて評価しなければなりません。システムのある領域に適用した戦略が、別の領域にも適用できるとは限りません。また、状況によっては、分離の要件をサポートできる既製のツールや仕組みを見つけられない可能性があることにも注意してください。そのような場合には、創造性を発揮して、分離モデルの一部を実装するための独自の仕組みを導入する必要があります。
指針となる原則
全体として、本当に強調すべき点は、運用がサービス体験の中心であるということです。これは、成功するSaaS企業の最も基本的な要素の1つであり、チームに新たな問題を予測し、テナントの課題に迅速に対処し、システム停止を防ぐためのツールと仕組みを提供します。マルチテナントビジネスの運営に伴う複雑な動的変化に対処できるようにするために、ここで適切なツールに投資することは不可欠です。
参考
- マルチテナントSaaSアーキテクチャの構築 ―原則、ベストプラクティス、AWSアーキテクチャパターン | Tod Golding, 河原 哲也, 櫻谷 広人 |本 | 通販 | Amazon
- 【書評】マルチテナントSaaSアーキテクチャの構築 | DevelopersIO
- 【イベントサマリ】マルチテナントSaaS設計の落とし穴と成功の鍵:実践者の声から学ぶ #アーキテクチャ - Qiita
ほかメモ:
SaaS とマルチテナント ソリューション アーキテクチャ - Azure Architecture Center | Microsoft Learn
など、読みがいがあるんだが読もうと思っていてもなかなか読み切れない。一旦 2025 年 11 月の記録として以上。
