什麼是多租戶

2022-04-05 06:57:41 字數 935 閱讀 2640

文章**

什麼是多租戶

多租戶技術或稱多重租賃技術,簡稱saas,是一種軟體架構技術,是實現如何在多使用者環境下(此處的多使用者一般是面向企業使用者)共用相同的系統或程式元件,並且可確保各使用者間資料的隔離性。

簡單講:在一台伺服器上執行單個應用例項,它為多個租戶(客戶)提供服務。從定義中我們可以理解:多租戶是一種架構,目的是為了讓多使用者環境下使用同一套程式,且保證使用者間資料隔離。那麼重點就很淺顯易懂了,多租戶的重點就是同一套程式下實現多使用者資料的隔離。

資料隔離方案

多租戶在資料儲存上存在三種主要的方案,分別是:

獨立資料庫

即乙個租戶乙個資料庫,這種方案的使用者資料隔離級別最高,安全性最好,但成本較高。

共享資料庫,獨立 schema

多個或所有租戶共享database,但是每個租戶乙個schema(也可叫做乙個user)。底層庫比如是:db2、oracle等,乙個資料庫下可以有多個schema。

缺點:如果出現故障,資料恢復比較困難,因為恢復資料庫將牽涉到其他租戶的資料;

共享資料庫,共享 schema,共享資料表

即租戶共享同乙個database、同乙個schema,但在表中增加tenantid多租戶的資料字段。這是共享程度最高、隔離級別最低的模式。

簡單來講,即每插入一條資料時都需要有乙個客戶的標識。這樣才能在同一張表中區分出不同客戶的資料,這也是我們系統目前用到的(provider_id)

優點:三種方案比較,第三種方案的維護和購置成本最低,允許每個資料庫支援的租戶數量最多。

缺點:隔離級別最低,安全性最低,需要在設計開發時加大對安全的開發量; 資料備份和恢復最困難,需要逐表逐條備份和還原。

什麼是多租戶

多租戶是指軟體架構支援乙個例項服務多個使用者 customer 每乙個使用者被稱之為租戶 tenant 軟體給予租戶可以對系統進行部分 定製的能力,如使用者介面顏色或業務規則,但是他們不能定製修改軟體的 由於共享開發和維護成本,都某些使用者來說,多租戶是一種經濟的解決方案。從維護角度來說,多租戶系統...

多租戶mysql架構 關於多租戶架構

多租戶架構能使oracle資料庫可用作多租戶容器資料庫 cdb 乙個多租戶容器資料庫 cdb 包含0個或多個自定義的可插拔資料庫 pdbs pdb是乙個包含schemas,schema objects,nonschema objects的集合。在12c之前,所有的oracle資料庫都是非cdb。1....

Salesforce多租戶架構

多租戶架構 multitenancy 已成為軟體行業的乙個口號。你只要詢問某家公司它對這個主題有什麼看法,就能判斷該公司從事什麼業務。對於靠該架構起家的公司 salesforce。com和谷歌 而言,多租戶架構必不可少。對於傳統的老牌開發商 微軟 sap和甲骨文 而言,多租戶架構分別被認為是一種威脅...