SaaS 系統(tǒng)簡介
時間:2023-03-16 08:50:01 | 來源:電子商務(wù)
時間:2023-03-16 08:50:01 來源:電子商務(wù)
SaaS 系統(tǒng)和傳統(tǒng)軟件區(qū)別的可以認(rèn)為買車和租車的區(qū)別,買車一次要花很多錢,每年都會損耗,越來越舊,租車的時候只需付當(dāng)次的費用,費用極少,而且每年都可以換一個最新款的。
SaaS系統(tǒng)就是這樣按需購買使用,節(jié)省了服務(wù)器費用、管理費用和系統(tǒng)運維費用。
SaaS使用租戶的概念,不同的公司、組織或機構(gòu)之間使用同一套系統(tǒng)功能,并對互相的業(yè)務(wù)數(shù)據(jù)不可見,這樣的公司、組織或機構(gòu)定義為"租戶"。
所有組織都共享同一套核心代碼,重復(fù)使用,企業(yè)無需再配備IT方面的專業(yè)技術(shù)人員,同時又能得到最新的技術(shù)應(yīng)用。
1、SaaS系統(tǒng)成熟度模型
根據(jù)SaaS系統(tǒng)是否具有可配置性、高性能、可伸縮性的特性,其設(shè)計成熟度分成四級
第一級:定制開發(fā)
每個客戶定制一套應(yīng)用軟件,并為其部署。每個客戶使用一個獨立的數(shù)據(jù)庫實例和應(yīng)用服務(wù)器實例。數(shù)據(jù)庫的數(shù)據(jù)結(jié)構(gòu)和應(yīng)用代碼可能都根據(jù)客戶需求做過定制化修改
第二級:可配置
每個客戶的定制化通過可配置的方式實現(xiàn),而不需要通過定制代碼、數(shù)據(jù)庫結(jié)構(gòu)來實現(xiàn)。這種模式要求軟件開發(fā)商在設(shè)計應(yīng)用的時候已經(jīng)考慮了擴展性,所以針對不同需求的客戶,可以采用靈活的配置來響應(yīng)
第三級:高性能的多租戶架構(gòu)
單實例多租戶, SaaS服務(wù)提供商部署一個應(yīng)用的實例即可滿足多個客戶的要求, 同時通過可配置的元數(shù)據(jù)來給每一個客戶提供不同的用戶體驗和功能。隨著客戶的增多,無需通過提供更多的服務(wù)器資源來運行更多應(yīng)用實例,更有效的利用了硬件資源,降低了運營成本。
第四級:可伸縮性的多租戶架構(gòu)
- 用戶首先通過接入租戶負(fù)載均衡層被分配到不同的實例上,通過多個實例可以實現(xiàn)應(yīng)用的近似無限水平擴展。
- 提供使用可配置的元數(shù)據(jù)來為每一個客戶提供其自身需要的獨一無二的用戶體驗
2、數(shù)據(jù)存儲多租戶方案
一、獨立數(shù)據(jù)庫
一個租戶 一個物理數(shù)據(jù)庫
二、共享數(shù)據(jù)庫,隔離數(shù)據(jù)架構(gòu)
多個或所有租戶共享物理數(shù)據(jù)庫,但一個租戶一個模式
三、共享數(shù)據(jù)庫,共享數(shù)據(jù)架構(gòu)
租戶共享同一個物理數(shù)據(jù)庫、同一個模式,在表中通過租戶ID區(qū)分租戶的數(shù)據(jù),這是共享程度最高、隔離級別最低的模式。
這三種方案從隔離級別、共享級別、成本、安全性幾個角度綜合比較,如下圖
作者自繪3、系統(tǒng)設(shè)計
SaaS模式的系統(tǒng)可以服務(wù)于各類租戶,需要在系統(tǒng)設(shè)計時包含租戶的功能,租戶的狀態(tài)包含啟用、禁用、取消
數(shù)據(jù)隔離即每個租戶只能看到自身的相關(guān)數(shù)據(jù),無法查看其他用戶的信息。因此需要為每個要隔離的業(yè)務(wù)表加上租戶ID字段以實現(xiàn)租戶數(shù)據(jù)之間的隔離
數(shù)據(jù)可配置,不同租戶之間需求的差異導(dǎo)致系統(tǒng)需要針對不同租戶保存許多擴展性數(shù)據(jù),定制字段就是根據(jù)客戶的需求在數(shù)據(jù)表上增加相應(yīng)的定制字段來保存擴展數(shù)據(jù)。
功能可配置,對于SaaS應(yīng)用,面對為數(shù)眾多的租戶,大部分租戶可能只會使用到應(yīng)用中的部分功能。因此系統(tǒng)需要支持租戶有選擇的使用自己需要的功能,滿足功能可配置要求
菜單的層次結(jié)構(gòu)和分布,不同的租戶可能也會有不同的要求 ;另外同一個菜單對不同的租戶來說,可能有不完全一樣的名字,使用個性化主題,個性化布局,可自行調(diào)整菜單結(jié)構(gòu)等等
租戶可以自定義擴展數(shù)據(jù),這些數(shù)據(jù)是需要在頁面上展示的,因此無論對頁面元素的個數(shù)、位置、順序,還是元素的含義,租戶都會有一些個性化的需求
4、應(yīng)用和數(shù)據(jù)存儲可擴展
當(dāng)客戶容量較小時,系統(tǒng)占用資源縮小;當(dāng)容量增大的時候,系統(tǒng)占用資源可以擴大,而不需要更改系統(tǒng)的整體架構(gòu)。一般利用水平擴展實現(xiàn),即通過增加普通硬件設(shè)備的數(shù)量增強
- 應(yīng)用服務(wù)器層的水平擴展實現(xiàn)應(yīng)用服務(wù)器層的負(fù)載均衡,是實現(xiàn)應(yīng)用服務(wù)器層水平擴展的最主要手段
- 數(shù)據(jù)庫水平擴展常用三種方式數(shù)據(jù)庫讀寫分離、數(shù)據(jù)庫垂直切分、數(shù)據(jù)庫水平切分
5、租戶權(quán)限
租戶擁有者,默認(rèn)的租戶管理員(租戶開通時默認(rèn)創(chuàng)建),具有租戶“系統(tǒng)管理”模塊的功能權(quán)限,可以在租用范圍內(nèi)創(chuàng)建角色,邀請其他用戶加入,分配權(quán)限
租戶管理員,租戶擁有者可以將租戶中的任意用戶提升為系統(tǒng)管理員,由其作為租戶管理員協(xié)助或負(fù)責(zé)租戶內(nèi)相應(yīng)的管理工作,如用戶管理,角色管理,功能權(quán)限分配等。
租戶成員,租戶開通后,默認(rèn)只有擁有者一個成員,此時擁有者請求其他用戶加入到該租戶中共同使用租用的應(yīng)用功能
6、SaaS存在的問題
- 增加了租戶的功能,數(shù)據(jù)共享,整個軟件架構(gòu)方面的復(fù)雜性大大增加
- 安全受限,由于系統(tǒng)不部署在企業(yè)內(nèi)部,信息的安全依賴于第三方
- 系統(tǒng)擴展性受限,由于依賴于,系統(tǒng)的功能擴展甚至定制化功能受限
參考來源
1、基于云計算SaaS模式的集團客戶解決方案探討
2、SaaS統(tǒng)一信息化平臺