版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
SAAS架構(gòu)設(shè)計(jì)學(xué)習(xí)筆記SAAS架構(gòu)設(shè)計(jì)學(xué)習(xí)筆記第1章SAAS的前世今生
軟件是什么在計(jì)算機(jī)誕生初期,軟件大多數(shù)與機(jī)器融為一體的,計(jì)算機(jī)就是軟件。單獨(dú)提供程序的業(yè)務(wù)被分離出來,有專門的人或公司來編寫程序,軟件就是一種產(chǎn)品。將用戶需要的軟件統(tǒng)一布署在應(yīng)用提供商的軟件硬件環(huán)境中,產(chǎn)生了ASP(ApplicationServiceProvider)軟件不應(yīng)該僅僅是提供應(yīng)用托管,應(yīng)該服務(wù)化,產(chǎn)生了SAAS。第1章SAAS的前世今生
軟件是什么在計(jì)算機(jī)誕生初期,軟件第1章SAAS的前世今生
SAAS基本概念SAAS(SoftwareasaService)SAAS商業(yè)模式理論的提出,將軟件從基于生產(chǎn)制造的第二產(chǎn)業(yè),轉(zhuǎn)變?yōu)榛诜?wù)的第三產(chǎn)業(yè)。SAAS與ASP的區(qū)別:ASP已經(jīng)有了為用戶提供服務(wù)的初步想法,只是關(guān)注的重點(diǎn)在于提供軟硬件環(huán)境這樣的服務(wù),而不是軟件本身。第1章SAAS的前世今生
SAAS基本概念SAAS(Sof第1章SAAS的前世今生
SAAS的優(yōu)勢(shì)從用戶方面看,SAAS的優(yōu)勢(shì)是拿來即用,無須維護(hù),按需使用,隨處可用,風(fēng)險(xiǎn)減小、顧本降低、安全性高;從軟件商方面看,SAAS的優(yōu)勢(shì)是節(jié)省銷售成本、節(jié)省維護(hù)成本、穩(wěn)健經(jīng)營(yíng)模式第1章SAAS的前世今生
SAAS的優(yōu)勢(shì)從用戶方面看,SA第1章SAAS的前世今生
SAAS的缺點(diǎn)及解決辦法依賴互聯(lián)網(wǎng)互聯(lián)網(wǎng)已經(jīng)成為信息時(shí)代社會(huì)必不可少的基礎(chǔ)設(shè)施,SAAS軟件依賴互聯(lián)網(wǎng)已經(jīng)不是什么問題。數(shù)據(jù)安全性SAAS軟件商必須提供高可靠性的數(shù)據(jù)存儲(chǔ)環(huán)境。數(shù)據(jù)保密性一是影響和改變用戶的觀念二是加強(qiáng)SAAS軟件商自身的信用建設(shè)。第1章SAAS的前世今生
SAAS的缺點(diǎn)及解決辦法依賴互聯(lián)第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)可配置高性能可伸縮Level1定制開發(fā)×××Level2可配置√××Level3√√×Level4√√√第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)可配置高第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Level1定制開發(fā):有一個(gè)客戶項(xiàng)目,就按客戶需求定制一個(gè)版本,每個(gè)客戶的軟件都有一份獨(dú)立的代碼,不同客戶軟件之間可以共享和重用的只有少量的可重用組件、庫以及開發(fā)人員的經(jīng)驗(yàn)Level2可配置:客戶可以通過簡(jiǎn)單的配置,讓通用型的軟件能夠滿足自己的一些個(gè)性經(jīng)需求。為每個(gè)客戶獨(dú)立部署一個(gè)運(yùn)行實(shí)例,只不過每個(gè)運(yùn)行實(shí)例運(yùn)行的是同一份代碼。第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Leve第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Level3高性能的多租戶架構(gòu):多租戶單實(shí)例的應(yīng)用架構(gòu)才是通常真正意義上的SAAS應(yīng)用架構(gòu),也就是我們通常所說的Multi-Tenant架構(gòu)。Level4可伸縮性的多租戶架構(gòu):在用戶數(shù)大量增長(zhǎng)情況下,無須更改架構(gòu),而僅通過硬件設(shè)備的增加,支撐應(yīng)用規(guī)模的增長(zhǎng)。第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Leve第2章SAAS成熟度模型
SAAS的成熟度模型漸進(jìn)步驟實(shí)現(xiàn)多租戶實(shí)現(xiàn)多租戶架構(gòu)下的高性能實(shí)現(xiàn)可配置實(shí)現(xiàn)伸縮性項(xiàng)目產(chǎn)品多租戶高性能的多租戶可配置的多租戶可伸縮的多租戶第2章SAAS成熟度模型
SAAS的成熟度模型漸進(jìn)步驟實(shí)現(xiàn)第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶模式下數(shù)據(jù)隔離方案模式隔離級(jí)別共享級(jí)別安全級(jí)別成本獨(dú)立數(shù)據(jù)庫高低高高共享數(shù)據(jù)庫、隔離表架構(gòu)中中中中共享數(shù)據(jù)庫、共享表、隔離數(shù)據(jù)架構(gòu)低高低低第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶模式第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶設(shè)計(jì)改造成SAAS多租戶的重點(diǎn)在于租戶管理和數(shù)據(jù)隔離第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶設(shè)計(jì)第4章高性能的Multi-Tenant實(shí)踐
數(shù)據(jù)庫層性能優(yōu)化建立合適的索引消除大數(shù)據(jù)表連接:冗余字段避免復(fù)雜SQL一般情況下,應(yīng)用服務(wù)器層的水平擴(kuò)展更容易實(shí)現(xiàn),而數(shù)據(jù)庫層的擴(kuò)展則比較困難。第4章高性能的Multi-Tenant實(shí)踐
數(shù)據(jù)庫層性能優(yōu)第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化Cache使用適當(dāng)?shù)腃ache是提升性能的重要措施;MemCache是由DangaInteractive開發(fā)的高性能、分布式的內(nèi)存對(duì)象緩存系統(tǒng)。使用Cache的應(yīng)用應(yīng)該具備如下特征(1)需要Cache的數(shù)據(jù)應(yīng)該是讀多寫少的;(2)Cache是易失的,還需要增加一層邏輯,當(dāng)Cache訪問不到時(shí),需要訪問數(shù)據(jù)庫,并重新將其載入Cache.第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化基于Tenant的索引搜索最簡(jiǎn)單是使用數(shù)據(jù)庫本身的like;在開源的搜索引擎中,Lucene顯然是輕量級(jí)搜索引擎的最佳選擇。統(tǒng)計(jì)和報(bào)表計(jì)算在報(bào)表計(jì)算是針對(duì)歷史數(shù)據(jù),且歷史數(shù)據(jù)不允許修改情況下,可以采用后臺(tái)任務(wù)定時(shí)統(tǒng)計(jì)策略。第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化異步操作有兩個(gè)不同層面的異步:表現(xiàn)層異步,一般用Ajax技術(shù)來實(shí)現(xiàn);后臺(tái)業(yè)務(wù)邏輯層異步,更多采用JMS、MQ技術(shù)實(shí)現(xiàn)第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案定制字段根據(jù)客戶的需求在數(shù)據(jù)表上增加相應(yīng)的定制字段來保存擴(kuò)展數(shù)據(jù)。對(duì)于SAAS應(yīng)用來說,定制的字段多如牛毛,顯示不是解決SAAS應(yīng)用下數(shù)據(jù)可配置的理想方案。CustomIDTenantIDNameExtStrExtInt11240Joy第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案預(yù)分配字段將所有擴(kuò)展數(shù)據(jù)轉(zhuǎn)換成字符串進(jìn)行存儲(chǔ),對(duì)于租戶用各字段保存的真實(shí)數(shù)據(jù)類型,由租戶配置并作為配置元數(shù)據(jù)進(jìn)行管理。系統(tǒng)可以根據(jù)元數(shù)據(jù)配置信息轉(zhuǎn)換成真實(shí)的數(shù)據(jù)類型。CustomIDTenantIDExt1Ext2Ext311240ConfigIDTenantIDTableColumnDataTypeContent2040customExt1intSalary第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案名值對(duì)稱可以將擴(kuò)展數(shù)據(jù)的保存與原數(shù)據(jù)表分離,用一張統(tǒng)一的擴(kuò)展數(shù)據(jù)表來保存。ExtIDTableDataIDConfigIDExtValue1002custom112203000ConfigIDTenantIDTableContentDataType2040customSalaryintidTenantIDName11240Joy第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
功能配置方案功能分解:每個(gè)功能都是有價(jià)值的,每個(gè)功能都是不可再分的,功能間不相互重疊,功能間不循環(huán)依賴,整個(gè)系統(tǒng)是完整的。功能定義及依賴:所謂功能依賴是指一個(gè)功能在沒有另外功能情況下不能使用。功能包設(shè)計(jì):根據(jù)用戶的類型和系統(tǒng)的業(yè)務(wù)邏輯,綜合考慮用戶的使用場(chǎng)景和使用習(xí)慣,將原子功能進(jìn)行組合成功能包。銷售包設(shè)計(jì):功能包不能完全的獨(dú)立使用,還需要按不同的商業(yè)意圖構(gòu)造適宜于用戶使用的銷售包。功能使用校驗(yàn):在原子功能使用前,對(duì)當(dāng)前用戶是否可以使用該原子功能進(jìn)行校驗(yàn)。第5章Multi-Tenant應(yīng)用的可配置性
功能配置方案第5章Multi-Tenant應(yīng)用的可配置性
界面配置方案系統(tǒng)菜單可配置:一個(gè)租戶一套菜單、一個(gè)菜單關(guān)聯(lián)一個(gè)原子功能、組織成樹狀結(jié)構(gòu)、同級(jí)菜單之間存在順序問題;頁面元素可配置。第5章Multi-Tenant應(yīng)用的可配置性
界面配置方案第6章可伸縮的SAAS應(yīng)用架構(gòu)
伸縮性(Scalable)的概念Scalable有時(shí)被翻譯成“可擴(kuò)展”,容易被誤解為功能可擴(kuò)展,實(shí)際上Scalable更多強(qiáng)調(diào)性能、容量方面可擴(kuò)展;Scalable伸縮性要求:系統(tǒng)規(guī)模/容量小時(shí),系統(tǒng)可縮小,大時(shí)可增加,而不需要更改系統(tǒng)整體架構(gòu),最理想狀態(tài)是隨著用戶數(shù)的增加,系統(tǒng)架構(gòu)不用做調(diào)整,而僅需要增加/增強(qiáng)硬件設(shè)備??缮炜s的最簡(jiǎn)單方式就是Scaleup,譯為垂直擴(kuò)展,也就是增強(qiáng)硬件設(shè)備,例如一個(gè)普通Server不行,換成小型機(jī)。此種擴(kuò)展面臨高成本問題。通常強(qiáng)調(diào)的應(yīng)用架構(gòu)可伸縮,一般是指Scaleout,即水平擴(kuò)展,例如Google搜索引擎是由數(shù)千數(shù)萬臺(tái)普通PCServer構(gòu)建的。第6章可伸縮的SAAS應(yīng)用架構(gòu)
伸縮性(Scalable)第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層的水平擴(kuò)展應(yīng)用服務(wù)器層的負(fù)載均衡,是實(shí)現(xiàn)應(yīng)用服務(wù)器層水平擴(kuò)展的最主要手段。具體策略有:1、基于硬件負(fù)載均衡設(shè)備實(shí)現(xiàn)負(fù)載均衡,如F5設(shè)備。2、基于軟件的方式實(shí)現(xiàn)負(fù)載均衡,例如我們通過配置WebLogicServer集群(Cluster)可以實(shí)現(xiàn)服務(wù)網(wǎng)絡(luò)的負(fù)載均衡、失敗轉(zhuǎn)移.第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層的水平擴(kuò)展應(yīng)用第6章可伸縮的SAAS應(yīng)用架構(gòu)
基于軟件的方式實(shí)現(xiàn)負(fù)載均衡我們通過配置WebLogicServer集群(Cluster)可以實(shí)現(xiàn)服務(wù)網(wǎng)絡(luò)的負(fù)載均衡、失敗轉(zhuǎn)移功能:WebLogic集群用一臺(tái)WebLogicServer做HttpProxyServer,將負(fù)載分配到集群中所有的實(shí)例,實(shí)現(xiàn)負(fù)載均衡。WebLogic集群用一臺(tái)WebLogicServer作為AdministratorServer,這臺(tái)AdministratorServer不處理請(qǐng)求,專門做管理。WebLogic集群中ManagedServer之間通過Scoket通訊,集群的所有Server位于同一網(wǎng)段中。失敗轉(zhuǎn)移與Session復(fù)制。WebLogicServer通過Session復(fù)制在失敗轉(zhuǎn)移的時(shí)候保存用戶數(shù)據(jù),默認(rèn)支持3種復(fù)制方式,InMemory、Database、File,我們采用InMemory的方式。第6章可伸縮的SAAS應(yīng)用架構(gòu)
基于軟件的方式實(shí)現(xiàn)負(fù)載均衡第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫層的水平擴(kuò)展相對(duì)于應(yīng)用服務(wù)器層的水平擴(kuò)展,數(shù)據(jù)庫層的水平擴(kuò)展更難實(shí)現(xiàn)。實(shí)現(xiàn)數(shù)據(jù)庫層的水平擴(kuò)展有多種方式:1、數(shù)據(jù)庫的垂直切分:將不同的功能模塊所涉及到的表劃分表不同的物理數(shù)據(jù)庫中,從而將對(duì)這些表的訪問壓力分擔(dān)到不同物理數(shù)據(jù)庫;2、數(shù)據(jù)庫的讀/寫分離:同一數(shù)據(jù)庫在多個(gè)物理服務(wù)器上具有多份Copy,彼此同步,寫操作都統(tǒng)一到一個(gè)主服務(wù)器上,讀操作則分擔(dān)到多臺(tái)從服務(wù)器上;3、數(shù)據(jù)庫的水平切分:將原來存儲(chǔ)在一個(gè)數(shù)據(jù)表中的數(shù)據(jù),按一定規(guī)則切分到不同物理數(shù)據(jù)庫中,每個(gè)數(shù)據(jù)庫結(jié)構(gòu)相同,數(shù)據(jù)不相同。第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫層的水平擴(kuò)展相對(duì)于應(yīng)第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的垂直切分對(duì)于大部分應(yīng)用而言,除非模塊間關(guān)聯(lián)很少,實(shí)現(xiàn)重直切分很難:1、原來可能存在的表關(guān)聯(lián)需要去除;2、同一個(gè)數(shù)據(jù)庫的事務(wù)操作,可能需要跨庫。結(jié)論:垂直切分可以適當(dāng)采用,但很難廣泛使用。第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的垂直切分對(duì)于大部分第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的讀/寫分離對(duì)于讀多寫少的互聯(lián)網(wǎng)應(yīng)用,會(huì)廣泛采用數(shù)據(jù)分離技術(shù)。例如MySQL的Replication技術(shù)。從數(shù)據(jù)庫也不是越多越好,從數(shù)據(jù)庫服務(wù)器過多分造成主數(shù)據(jù)庫服務(wù)器同步性能下降。讀寫比例為4:1,主從數(shù)據(jù)庫服務(wù)器比例也為4:1較好。當(dāng)應(yīng)用的性能瓶頸出現(xiàn)在寫操作上時(shí),讀/寫分離技術(shù)對(duì)伸縮性的提升就非常有限了。第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的讀/寫分離對(duì)于讀多第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的水平切分可以每10000個(gè)租戶共享一個(gè)數(shù)據(jù)庫,再增加10000個(gè)租戶則增加一個(gè)數(shù)據(jù)庫。水平切分對(duì)于大部分SAAS應(yīng)用都適用,因?yàn)镾AAS的不同租戶之間業(yè)務(wù)上沒有任何聯(lián)系。架構(gòu)改造:1、租戶和用戶數(shù)據(jù)必須位于一個(gè)集中式的數(shù)據(jù)庫中。2、建立租戶對(duì)應(yīng)到哪個(gè)數(shù)據(jù)庫的映射。第6章可伸縮的SAAS應(yīng)用架構(gòu)
數(shù)據(jù)庫的水平切分可以每10第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層和數(shù)據(jù)庫層的關(guān)聯(lián)所有的應(yīng)用服務(wù)器不應(yīng)該是完全平等的,應(yīng)該在數(shù)據(jù)庫服務(wù)器對(duì)應(yīng),也就是說,不同的租戶可能不僅是不同的數(shù)據(jù)庫,也對(duì)應(yīng)不同的應(yīng)用服務(wù)器。第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層和數(shù)據(jù)庫層的關(guān)第7章SAAS系統(tǒng)安全
應(yīng)用安全未完待續(xù)第7章SAAS系統(tǒng)安全
應(yīng)用安全未完待續(xù)SAAS架構(gòu)設(shè)計(jì)學(xué)習(xí)筆記SAAS架構(gòu)設(shè)計(jì)學(xué)習(xí)筆記第1章SAAS的前世今生
軟件是什么在計(jì)算機(jī)誕生初期,軟件大多數(shù)與機(jī)器融為一體的,計(jì)算機(jī)就是軟件。單獨(dú)提供程序的業(yè)務(wù)被分離出來,有專門的人或公司來編寫程序,軟件就是一種產(chǎn)品。將用戶需要的軟件統(tǒng)一布署在應(yīng)用提供商的軟件硬件環(huán)境中,產(chǎn)生了ASP(ApplicationServiceProvider)軟件不應(yīng)該僅僅是提供應(yīng)用托管,應(yīng)該服務(wù)化,產(chǎn)生了SAAS。第1章SAAS的前世今生
軟件是什么在計(jì)算機(jī)誕生初期,軟件第1章SAAS的前世今生
SAAS基本概念SAAS(SoftwareasaService)SAAS商業(yè)模式理論的提出,將軟件從基于生產(chǎn)制造的第二產(chǎn)業(yè),轉(zhuǎn)變?yōu)榛诜?wù)的第三產(chǎn)業(yè)。SAAS與ASP的區(qū)別:ASP已經(jīng)有了為用戶提供服務(wù)的初步想法,只是關(guān)注的重點(diǎn)在于提供軟硬件環(huán)境這樣的服務(wù),而不是軟件本身。第1章SAAS的前世今生
SAAS基本概念SAAS(Sof第1章SAAS的前世今生
SAAS的優(yōu)勢(shì)從用戶方面看,SAAS的優(yōu)勢(shì)是拿來即用,無須維護(hù),按需使用,隨處可用,風(fēng)險(xiǎn)減小、顧本降低、安全性高;從軟件商方面看,SAAS的優(yōu)勢(shì)是節(jié)省銷售成本、節(jié)省維護(hù)成本、穩(wěn)健經(jīng)營(yíng)模式第1章SAAS的前世今生
SAAS的優(yōu)勢(shì)從用戶方面看,SA第1章SAAS的前世今生
SAAS的缺點(diǎn)及解決辦法依賴互聯(lián)網(wǎng)互聯(lián)網(wǎng)已經(jīng)成為信息時(shí)代社會(huì)必不可少的基礎(chǔ)設(shè)施,SAAS軟件依賴互聯(lián)網(wǎng)已經(jīng)不是什么問題。數(shù)據(jù)安全性SAAS軟件商必須提供高可靠性的數(shù)據(jù)存儲(chǔ)環(huán)境。數(shù)據(jù)保密性一是影響和改變用戶的觀念二是加強(qiáng)SAAS軟件商自身的信用建設(shè)。第1章SAAS的前世今生
SAAS的缺點(diǎn)及解決辦法依賴互聯(lián)第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)可配置高性能可伸縮Level1定制開發(fā)×××Level2可配置√××Level3√√×Level4√√√第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)可配置高第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Level1定制開發(fā):有一個(gè)客戶項(xiàng)目,就按客戶需求定制一個(gè)版本,每個(gè)客戶的軟件都有一份獨(dú)立的代碼,不同客戶軟件之間可以共享和重用的只有少量的可重用組件、庫以及開發(fā)人員的經(jīng)驗(yàn)Level2可配置:客戶可以通過簡(jiǎn)單的配置,讓通用型的軟件能夠滿足自己的一些個(gè)性經(jīng)需求。為每個(gè)客戶獨(dú)立部署一個(gè)運(yùn)行實(shí)例,只不過每個(gè)運(yùn)行實(shí)例運(yùn)行的是同一份代碼。第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Leve第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Level3高性能的多租戶架構(gòu):多租戶單實(shí)例的應(yīng)用架構(gòu)才是通常真正意義上的SAAS應(yīng)用架構(gòu),也就是我們通常所說的Multi-Tenant架構(gòu)。Level4可伸縮性的多租戶架構(gòu):在用戶數(shù)大量增長(zhǎng)情況下,無須更改架構(gòu),而僅通過硬件設(shè)備的增加,支撐應(yīng)用規(guī)模的增長(zhǎng)。第2章SAAS成熟度模型
SAAS的成熟度模型分級(jí)Leve第2章SAAS成熟度模型
SAAS的成熟度模型漸進(jìn)步驟實(shí)現(xiàn)多租戶實(shí)現(xiàn)多租戶架構(gòu)下的高性能實(shí)現(xiàn)可配置實(shí)現(xiàn)伸縮性項(xiàng)目產(chǎn)品多租戶高性能的多租戶可配置的多租戶可伸縮的多租戶第2章SAAS成熟度模型
SAAS的成熟度模型漸進(jìn)步驟實(shí)現(xiàn)第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶模式下數(shù)據(jù)隔離方案模式隔離級(jí)別共享級(jí)別安全級(jí)別成本獨(dú)立數(shù)據(jù)庫高低高高共享數(shù)據(jù)庫、隔離表架構(gòu)中中中中共享數(shù)據(jù)庫、共享表、隔離數(shù)據(jù)架構(gòu)低高低低第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶模式第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶設(shè)計(jì)改造成SAAS多租戶的重點(diǎn)在于租戶管理和數(shù)據(jù)隔離第3章構(gòu)建Multi-Tenant應(yīng)用
SAAS多租戶設(shè)計(jì)第4章高性能的Multi-Tenant實(shí)踐
數(shù)據(jù)庫層性能優(yōu)化建立合適的索引消除大數(shù)據(jù)表連接:冗余字段避免復(fù)雜SQL一般情況下,應(yīng)用服務(wù)器層的水平擴(kuò)展更容易實(shí)現(xiàn),而數(shù)據(jù)庫層的擴(kuò)展則比較困難。第4章高性能的Multi-Tenant實(shí)踐
數(shù)據(jù)庫層性能優(yōu)第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化Cache使用適當(dāng)?shù)腃ache是提升性能的重要措施;MemCache是由DangaInteractive開發(fā)的高性能、分布式的內(nèi)存對(duì)象緩存系統(tǒng)。使用Cache的應(yīng)用應(yīng)該具備如下特征(1)需要Cache的數(shù)據(jù)應(yīng)該是讀多寫少的;(2)Cache是易失的,還需要增加一層邏輯,當(dāng)Cache訪問不到時(shí),需要訪問數(shù)據(jù)庫,并重新將其載入Cache.第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化基于Tenant的索引搜索最簡(jiǎn)單是使用數(shù)據(jù)庫本身的like;在開源的搜索引擎中,Lucene顯然是輕量級(jí)搜索引擎的最佳選擇。統(tǒng)計(jì)和報(bào)表計(jì)算在報(bào)表計(jì)算是針對(duì)歷史數(shù)據(jù),且歷史數(shù)據(jù)不允許修改情況下,可以采用后臺(tái)任務(wù)定時(shí)統(tǒng)計(jì)策略。第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化異步操作有兩個(gè)不同層面的異步:表現(xiàn)層異步,一般用Ajax技術(shù)來實(shí)現(xiàn);后臺(tái)業(yè)務(wù)邏輯層異步,更多采用JMS、MQ技術(shù)實(shí)現(xiàn)第4章高性能的Multi-Tenant實(shí)踐
應(yīng)用層性能優(yōu)化第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案定制字段根據(jù)客戶的需求在數(shù)據(jù)表上增加相應(yīng)的定制字段來保存擴(kuò)展數(shù)據(jù)。對(duì)于SAAS應(yīng)用來說,定制的字段多如牛毛,顯示不是解決SAAS應(yīng)用下數(shù)據(jù)可配置的理想方案。CustomIDTenantIDNameExtStrExtInt11240Joy第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案預(yù)分配字段將所有擴(kuò)展數(shù)據(jù)轉(zhuǎn)換成字符串進(jìn)行存儲(chǔ),對(duì)于租戶用各字段保存的真實(shí)數(shù)據(jù)類型,由租戶配置并作為配置元數(shù)據(jù)進(jìn)行管理。系統(tǒng)可以根據(jù)元數(shù)據(jù)配置信息轉(zhuǎn)換成真實(shí)的數(shù)據(jù)類型。CustomIDTenantIDExt1Ext2Ext311240ConfigIDTenantIDTableColumnDataTypeContent2040customExt1intSalary第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案名值對(duì)稱可以將擴(kuò)展數(shù)據(jù)的保存與原數(shù)據(jù)表分離,用一張統(tǒng)一的擴(kuò)展數(shù)據(jù)表來保存。ExtIDTableDataIDConfigIDExtValue1002custom112203000ConfigIDTenantIDTableContentDataType2040customSalaryintidTenantIDName11240Joy第5章Multi-Tenant應(yīng)用的可配置性
數(shù)據(jù)配置方案第5章Multi-Tenant應(yīng)用的可配置性
功能配置方案功能分解:每個(gè)功能都是有價(jià)值的,每個(gè)功能都是不可再分的,功能間不相互重疊,功能間不循環(huán)依賴,整個(gè)系統(tǒng)是完整的。功能定義及依賴:所謂功能依賴是指一個(gè)功能在沒有另外功能情況下不能使用。功能包設(shè)計(jì):根據(jù)用戶的類型和系統(tǒng)的業(yè)務(wù)邏輯,綜合考慮用戶的使用場(chǎng)景和使用習(xí)慣,將原子功能進(jìn)行組合成功能包。銷售包設(shè)計(jì):功能包不能完全的獨(dú)立使用,還需要按不同的商業(yè)意圖構(gòu)造適宜于用戶使用的銷售包。功能使用校驗(yàn):在原子功能使用前,對(duì)當(dāng)前用戶是否可以使用該原子功能進(jìn)行校驗(yàn)。第5章Multi-Tenant應(yīng)用的可配置性
功能配置方案第5章Multi-Tenant應(yīng)用的可配置性
界面配置方案系統(tǒng)菜單可配置:一個(gè)租戶一套菜單、一個(gè)菜單關(guān)聯(lián)一個(gè)原子功能、組織成樹狀結(jié)構(gòu)、同級(jí)菜單之間存在順序問題;頁面元素可配置。第5章Multi-Tenant應(yīng)用的可配置性
界面配置方案第6章可伸縮的SAAS應(yīng)用架構(gòu)
伸縮性(Scalable)的概念Scalable有時(shí)被翻譯成“可擴(kuò)展”,容易被誤解為功能可擴(kuò)展,實(shí)際上Scalable更多強(qiáng)調(diào)性能、容量方面可擴(kuò)展;Scalable伸縮性要求:系統(tǒng)規(guī)模/容量小時(shí),系統(tǒng)可縮小,大時(shí)可增加,而不需要更改系統(tǒng)整體架構(gòu),最理想狀態(tài)是隨著用戶數(shù)的增加,系統(tǒng)架構(gòu)不用做調(diào)整,而僅需要增加/增強(qiáng)硬件設(shè)備。可伸縮的最簡(jiǎn)單方式就是Scaleup,譯為垂直擴(kuò)展,也就是增強(qiáng)硬件設(shè)備,例如一個(gè)普通Server不行,換成小型機(jī)。此種擴(kuò)展面臨高成本問題。通常強(qiáng)調(diào)的應(yīng)用架構(gòu)可伸縮,一般是指Scaleout,即水平擴(kuò)展,例如Google搜索引擎是由數(shù)千數(shù)萬臺(tái)普通PCServer構(gòu)建的。第6章可伸縮的SAAS應(yīng)用架構(gòu)
伸縮性(Scalable)第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層的水平擴(kuò)展應(yīng)用服務(wù)器層的負(fù)載均衡,是實(shí)現(xiàn)應(yīng)用服務(wù)器層水平擴(kuò)展的最主要手段。具體策略有:1、基于硬件負(fù)載均衡設(shè)備實(shí)現(xiàn)負(fù)載均衡,如F5設(shè)備。2、基于軟件的方式實(shí)現(xiàn)負(fù)載均衡,例如我們通過配置WebLogicServer集群(Cluster)可以實(shí)現(xiàn)服務(wù)網(wǎng)絡(luò)的負(fù)載均衡、失敗轉(zhuǎn)移.第6章可伸縮的SAAS應(yīng)用架構(gòu)
應(yīng)用服務(wù)器層的水平擴(kuò)展應(yīng)用第6章可伸縮的SAAS應(yīng)用架構(gòu)
基于軟件的方式實(shí)現(xiàn)負(fù)載均衡我們通過配置WebLogicServer集群(Cluster)可以實(shí)現(xiàn)服務(wù)網(wǎng)絡(luò)的負(fù)載均衡、失敗轉(zhuǎn)移功能:WebLogic集群用一臺(tái)WebLogicServer做HttpProxyServer,將負(fù)載分配到集群中所有的實(shí)例,實(shí)現(xiàn)負(fù)載均衡。WebLogic集群用一臺(tái)WebLogicServer作為AdministratorServer,這臺(tái)AdministratorServer不處理請(qǐng)求,專門做管理。WebLogic集群中ManagedServer之間通過Scoket通訊,集群的所有Server位于同一網(wǎng)段中。失敗轉(zhuǎn)移與Session復(fù)制。WebLogicServer通過Session復(fù)制在失敗轉(zhuǎn)移的時(shí)候保存用戶數(shù)據(jù),默認(rèn)支持3種復(fù)制方式,InMemo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)安全生產(chǎn)與應(yīng)急預(yù)案制度
- 2026濱州市公安機(jī)關(guān)警務(wù)輔助人員招錄(141人)參考題庫附答案
- 2026福建省網(wǎng)絡(luò)與信息安全測(cè)評(píng)中心招聘駕駛員2人參考題庫附答案
- 2026福建福州市倉(cāng)山區(qū)文化旅游投資集團(tuán)有限公司副總經(jīng)理崗位(職業(yè)經(jīng)理人)招聘1人參考題庫附答案
- 2026西安市浐灞第二中學(xué)教師招聘?jìng)淇碱}庫附答案
- 2026貴州省交通綜合運(yùn)輸事務(wù)中心和貴州省鐵路民航事務(wù)中心選調(diào)27人備考題庫附答案
- 2026青島市嶗山區(qū)某國(guó)有企業(yè)招聘4人備考題庫附答案
- 中共南充市委老干部局中共南充市委市直屬機(jī)關(guān)工作委員會(huì)2025年公開遴選公務(wù)員(參照管理人員)的(3人)參考題庫附答案
- 常州市公安局鐘樓分局公開招聘警務(wù)輔助人員20人考試備考題庫附答案
- 招26人!海北州公安局2025年度面向社會(huì)公開招聘警務(wù)輔助人員參考題庫附答案
- 【語文】青島市小學(xué)三年級(jí)上冊(cè)期末試卷(含答案)
- 老年人靜脈輸液技巧
- 呼吸內(nèi)科一科一品護(hù)理匯報(bào)
- 2025年公安機(jī)關(guān)人民警察基本級(jí)執(zhí)法資格考試試卷及答案
- 網(wǎng)戀詐騙課件
- 2025版壓力性損傷預(yù)防和治療的新指南解讀
- 2025年新疆第師圖木舒克市公安局招聘警務(wù)輔助人員公共基礎(chǔ)知識(shí)+寫作綜合練習(xí)題及答案
- 醫(yī)院患者護(hù)理隱患預(yù)警及上報(bào)制度
- 2026年春節(jié)放假通知模板范文
- 非電量保護(hù)培訓(xùn)
- 2025年高考真題分類匯編必修三 《政治與法治》(全國(guó))(解析版)
評(píng)論
0/150
提交評(píng)論