掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
譯文
作者:陳峻譯 2020-09-15 07:00:00
開發(fā)
架構(gòu)
SaaS 本文將和您討論單租戶和多租戶架構(gòu)之間的具體差異,其中包括每種架構(gòu)是如何工作的,哪種模型方案可以滿足何種場(chǎng)景需求,以及構(gòu)建SaaS應(yīng)用程序的三種方法。

成都創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)公司、網(wǎng)站制作、網(wǎng)站營銷推廣、網(wǎng)站開發(fā)設(shè)計(jì),對(duì)服務(wù)成都混凝土泵車等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!
【51CTO.com快譯】隨著云服務(wù)持續(xù)在各個(gè)領(lǐng)域幫助我們存儲(chǔ)和管理各類數(shù)據(jù),我們需要根據(jù)實(shí)際的應(yīng)用場(chǎng)景選擇正確的SaaS框架。通常,我們有單租戶架構(gòu)與多租戶架構(gòu)兩種選擇。
從字面上理解,單租戶和多租戶架構(gòu)之間的主要區(qū)別是:?jiǎn)巫鈶艏軜?gòu)通常是在獨(dú)占式的SaaS(軟件即服務(wù))云服務(wù)或交付模型中使用。而多租戶架構(gòu)則是多個(gè)用戶同時(shí)分享軟件應(yīng)用的相關(guān)服務(wù)。本文將和您討論兩者的具體差異,包括每種架構(gòu)是如何工作的,哪種模型方案可以滿足何種場(chǎng)景需求,以及構(gòu)建SaaS應(yīng)用程序的三種方法。
單租戶架構(gòu)的特點(diǎn)
讓我們以房地產(chǎn)為例,來看看單租戶架構(gòu)系統(tǒng)的工作原理。
如上圖所示,我們將SaaS服務(wù)器環(huán)境視為一個(gè)街區(qū),想象每個(gè)用戶都有自己的辦公樓,所有這些建筑物都位于同一條街上。那么每個(gè)用戶都在其建筑物內(nèi)運(yùn)行自己的業(yè)務(wù),每個(gè)建筑物在大街上排成一行。
可見,單租戶架構(gòu)具有獨(dú)享性,因此每個(gè)SaaS服務(wù)器僅允許一個(gè)實(shí)例。服務(wù)提供商往往會(huì)有針對(duì)性地為每個(gè)用戶構(gòu)建單個(gè)軟件。在完成本地用戶端的安裝后,用戶可以自行更改UI(用戶界面),以滿足特定的環(huán)境需求。雖然每個(gè)用戶都有各自的數(shù)據(jù)庫和應(yīng)用實(shí)例,但是他們是不可以訪問到基礎(chǔ)代碼的。
值得一提的是,單租戶架構(gòu)不但適用于本地應(yīng)用,也適合云計(jì)算環(huán)境,包括第三方云平臺(tái)和私有云服務(wù)等。因此,如果企業(yè)希望從精細(xì)化管理的業(yè)務(wù)環(huán)境,過渡到云端自托管的對(duì)等環(huán)境,那么采用單租戶架構(gòu)會(huì)比較適合。
多租戶架構(gòu)的特點(diǎn)
仿造上述房地產(chǎn)的示例,我們可以將多租戶架構(gòu)描述為辦公室環(huán)境,所有辦公室(用戶端)都位于同一個(gè)建筑物內(nèi)。每個(gè)用戶都可以在大型SaaS的環(huán)境中擁有自己的工作空間。
如上圖所示,在多租戶架構(gòu)中,每個(gè)軟件應(yīng)用程序?qū)嵗际菫橐粋€(gè)以上的租戶(用戶端)提供服務(wù)的。所有用戶端將共享相同的數(shù)據(jù)庫和應(yīng)用信息。因此,多租戶的SaaS架構(gòu)往往是基于B2B生態(tài)系統(tǒng)的,兩到多個(gè)用戶可以同時(shí)在同一個(gè)區(qū)域內(nèi)進(jìn)行協(xié)作。
對(duì)于那些初創(chuàng)型企業(yè)來說,它們希望擁有更舒適的啟動(dòng)體驗(yàn)、以及較低硬件配置。那么多租戶架構(gòu)就是一個(gè)絕佳的解決方案。作為企業(yè)在SaaS環(huán)境中普遍采取的標(biāo)準(zhǔn),多租戶架構(gòu)允許其用戶在軟件內(nèi)部進(jìn)行各種自定義的更改。
兩種架構(gòu)的各自優(yōu)點(diǎn)
總體而言,單租戶比其相應(yīng)的多租戶要昂貴得多。而多租戶架構(gòu)具有非常高效的資源使用率,以及更大的計(jì)算力。同時(shí),多租戶架構(gòu)的維護(hù)成本要便宜得多。
兩種架構(gòu)的各自缺點(diǎn)
從成本上說:除了本身比較昂貴以外,由于需要更多的資源和時(shí)間來進(jìn)行維護(hù)和定制,因此單租戶架構(gòu)不但比多租戶架構(gòu)實(shí)現(xiàn)起來更麻煩,而且構(gòu)建與維護(hù)成本比較高。
從安全角度來看:由于需要開放和預(yù)留適合各類用戶訪問的接入點(diǎn),因此多租戶架構(gòu)更容易受到攻擊。此外,由于多租戶架構(gòu)能夠提供的定制項(xiàng)不如單租戶架構(gòu)多,因此用戶在運(yùn)行環(huán)境方面的管控力度不足。
從升級(jí)與維護(hù)角度:?jiǎn)巫鈶艏軜?gòu)需要由用戶端發(fā)起更新和升級(jí),而多租戶架構(gòu)則可以使用為所有用戶啟動(dòng)的一次性通用升級(jí)。
為何要為SaaS應(yīng)用選擇多租戶架構(gòu)?
在開發(fā)SaaS應(yīng)用程序時(shí),開發(fā)人員和企業(yè)往往傾向于選擇更高效、更具成本效益的架構(gòu)?;谏鲜鰧?duì)于兩種架構(gòu)優(yōu)、缺點(diǎn)的分析,用戶通常會(huì)選用多租戶的SaaS架構(gòu)。目前,多租戶方法擁有兩種實(shí)現(xiàn)模型:
如今,諸如Zendesk、Boho、Office 365、Slack等知名應(yīng)用,以及大多數(shù)云服務(wù)提供商都能夠提供多租戶的SaaS應(yīng)用環(huán)境。用戶端可以在相同的硬件、相同的存儲(chǔ)、以及相同操作環(huán)境(如:Slack)中使用到相同的應(yīng)用程序。當(dāng)然,這與虛擬化有著本質(zhì)的區(qū)別。在虛擬化環(huán)境中,所有應(yīng)用程序是在各自操作的系統(tǒng)(或不同的虛擬機(jī))上運(yùn)行。
目前,最常見的多租戶應(yīng)用程序架構(gòu)可被歸結(jié)為如下三個(gè)架構(gòu)模型:
小結(jié)
綜上所述,我們可以得出如下結(jié)論:
【原標(biāo)題】Single-Tenant vs Multi-Tenant: SaaS Architecture (作者:Alfonso Valdes)
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流