什麼是多租戶架構? - Codonomics
多租戶應用程式部署體系結構可以透過4種廣泛的方式建模:
- 單獨的應用程式和單獨的資料庫
- 共享應用程式和共享資料庫
- 單獨的應用程式和共享資料庫
- 共享應用程式和單獨的資料庫
這裡沒有對與錯。您應該考慮業務背景和約束條件,這是關於選擇和後果的。在本文中,我打算記下一些關鍵點,以牢記這些多租戶體系結構中的每一個。
單獨的應用程式和單獨的資料庫
- 從開發和部署的角度來看,最容易實現。
- 只需為每個租戶自動化部署基礎架構即可快速設定。
- 從基礎架構成本的角度來看,所有模型中最昂貴的。
- 大規模部署相對較長的部署時間以用於更新的應用程式版本。
- 從基礎設施資源利用的角度來看,浪費更多。
- 應用程式的可伸縮性無狀態標準意味著:
- 不儲存使用者請求資料
- 適應性:
- 這是啟動SAAS平臺的最佳方法,可用於產品市場,直至穩定和增長。
- 當您提供SAAS作為白色標籤的產品時。
- 在客戶端基礎結構上部署SAAS產品時,可能出於合規性原因。
- 挑戰:
- 您如何最佳化成本資源?
共享應用程式和共享資料庫
- 所有多租戶架構中最複雜的野獸。
- 最大限度地利用紅外線利用率,以實現最大的盈利能力。
- 挑戰:
單獨的應用程式和共享資料庫
- 一種模型,其中特定於租戶的配置與已部署的例項相關聯,但是都共享一個公共資料庫。每個客戶端的資料隔離是透過在資料庫模式之前新增租戶資訊來實現的。
- 您有許多Web框架和Web外掛都支援這種帶有租戶特定資料的字首查詢模型,以找到正確的資料來源。例如,apartment (rails/ruby), multi-tenant (laravel/php),springboot(java)等。
- 關聯式資料庫例項非常昂貴。它比您的應用程式例項價格更高,並且不如您的計算例項那麼容易處理。您需要對容量規劃進行一些前瞻性的展望。
- 當您以SaaS提供者的身份管理資料庫例項並希望在總體成本上進行最佳化時,最簡單的操作通常是使用共享資料庫。
- 應用程式的可伸縮性無狀態標準意味著:
- 不儲存使用者請求資料
- 不保留資料庫響應
- 挑戰:
- 隨著交易量和資料量的增加,您如何管理?關聯式資料庫憑藉其優點是可以垂直伸縮的,而不能水平伸縮的。現在,這意味著隨著您加入越來越多的租戶,它可能會比您想象的更快成為瓶頸,具體取決於交易和資料量。
共享應用程式和單獨的資料庫
- 請求可以命中任何可用的應用程式例項。
- 每個請求都會動態獲取租戶特定的配置。
- 應用程式的可伸縮性無狀態標準意味著:
- 不儲存使用者請求資料
- 不持有租戶的配置
- 不保留資料庫響應
- 挑戰:
- 如何在每個請求的基礎上動態訪問正確的資料庫?您如何最佳地進行延遲?想想Atlassian的Confluence,Jira,Bitbucket等產品套件。
- 如果SaaS應用程式在UI上提供了很多自定義功能,您如何最佳地獲得針對租戶的特定配置以獲得延遲?Wix電子商務,Shopify等
希望能幫助您選擇SAAS體系結構的設計...
與此相關的是,有幾本書值得您閱讀:
相關文章
- 圖解:什麼是多租戶?圖解
- 如何理解多租戶架構?架構
- 多租戶是什麼意思?怎麼理解?
- SaaS架構:多租戶系統架構設計架構
- Oracle多租戶架構優勢分析Oracle架構
- 多租戶軟體開發架構架構
- 多租戶系統的應用架構應用架構
- 新零售SaaS架構:多租戶系統架構設計架構
- 1.2.1. 非多租戶架構帶來的挑戰架構
- 多租戶
- 【解決方案】多租戶技術架構設計入門(一)架構
- 架構C01: 什麼是架構?為什麼做架構?架構師需要做什麼?架構
- Part I Multitenant Architecture (多租戶結構)NaN
- 2 多租戶體系結構概述
- 什麼是架構師架構
- Android 什麼是架構?Android架構
- 什麼是Saas架構?架構
- 什麼是池架構?架構
- 什麼是Lambda架構架構
- VIE架構是什麼架構
- 什麼是AWS構架?
- Spring Cloud Alibaba 多租戶 saas 設計的企業開發架構SpringCloud架構
- ASP.NET Core + SaasKit + PostgreSQL + Citus 的多租戶應用程式架構示例ASP.NETSQL架構
- Spring Cloud Alibaba 分散式微服務+多租戶saas企業開發架構SpringCloud分散式微服務架構
- Spring Cloud Alibaba 分散式微服務+多租戶saas企業開發架構SpringCloud分散式微服務架構
- 1.1. 關於多租戶體系結構
- 漫畫:什麼是架構師架構
- 什麼是Poly軟體架構?架構
- 基於 Ionic 2 多主題、多租戶構建方案探索
- 多租戶解析與Demo
- oracle 12c 多租戶體系結構概念Oracle
- 1.2. 多租戶體系結構的優點
- 什麼是真正的架構設計?架構
- 一文看懂什麼是架構架構
- 什麼是存算分離架構?架構
- 什麼是企業架構師? (tpierrain)架構AI
- SOA架構和微服務架構的區別是什麼?架構微服務
- Part II 配置和管理多租戶環境概述-Oracle多租戶管理員指南Oracle