開(kāi)源的SaaS解決方案_第1頁(yè)
開(kāi)源的SaaS解決方案_第2頁(yè)
開(kāi)源的SaaS解決方案_第3頁(yè)
開(kāi)源的SaaS解決方案_第4頁(yè)
開(kāi)源的SaaS解決方案_第5頁(yè)
已閱讀5頁(yè),還剩56頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

SaaS關(guān)鍵技術(shù)

----開(kāi)源解決方案Copyright?2009NeusoftCorporation解決方案技術(shù)中心1精選課件Part1:IT部署視圖演化及挑戰(zhàn)Part2:動(dòng)態(tài)基礎(chǔ)設(shè)施Part3:SaaS架構(gòu)關(guān)注技術(shù)Part4:Q&A2精選課件IT系統(tǒng)部署視圖演化-13精選課件N輪視圖演化后架構(gòu)4精選課件5精選課件演化面對(duì)的挑戰(zhàn)6精選課件Part1:IT部署視圖演化及挑戰(zhàn)Part2:動(dòng)態(tài)基礎(chǔ)設(shè)施Part3:SaaS架構(gòu)關(guān)注技術(shù)Part4:Q&A7精選課件云計(jì)算關(guān)鍵特性8精選課件基礎(chǔ)設(shè)施供應(yīng)生命周期9精選課件資源池動(dòng)態(tài)伸縮CloudCloudDDDDDDDDD10精選課件Part1:IT部署視圖演化及挑戰(zhàn)Part2:動(dòng)態(tài)基礎(chǔ)設(shè)施Part3:SaaS關(guān)注技術(shù)Part4:Q&A11精選課件SaaS關(guān)鍵特性高伸縮:多租戶(hù),功能可配置,流程可配置12精選課件SaaS架構(gòu)關(guān)注內(nèi)容13精選課件數(shù)據(jù)存儲(chǔ)的挑戰(zhàn)14精選課件傳統(tǒng)解決方案VS新興解決方案15精選課件SQL集群技術(shù)-MySQL集群方案有點(diǎn)缺點(diǎn)速度適用場(chǎng)合NDB可用于負(fù)載均衡場(chǎng)合;

可用于高可靠性場(chǎng)合;

高伸縮性;

真正的數(shù)據(jù)庫(kù)冗余;

容易維護(hù)。

隨著數(shù)據(jù)庫(kù)的變大,對(duì)RAM的需求變得更大,因此成本很高幾乎比典型的單獨(dú)服務(wù)器(無(wú)千兆以太網(wǎng),無(wú)SCI卡,存儲(chǔ)引擎相關(guān)的限制少)慢10倍。冗余,高可靠性,負(fù)載均衡MySQL/GFS-GNBD/HA(Active/Passive)高可靠性

某種程度的冗余

按照高可靠性進(jìn)行伸縮

沒(méi)有負(fù)載均衡

沒(méi)有保證的冗余

無(wú)法對(duì)寫(xiě)操作進(jìn)行伸縮

對(duì)讀操作支持得較好需要高可靠性的、讀操作密集型的應(yīng)用MySQL/DRBD/HA(Active/Passive)高可靠性;

一定程度的冗余;

以高可靠性名義來(lái)看是可伸縮的

沒(méi)有負(fù)載均衡

沒(méi)有保證的冗余

在寫(xiě)負(fù)載方面沒(méi)有伸縮性

在讀寫(xiě)方面相當(dāng)于單獨(dú)服務(wù)器需要高可靠性、讀操作密集型的應(yīng)用MySQLWriteMaster/MultipleMySQLReadSlaves(Active/Active)讀操作的高可靠性;

讀操作的負(fù)載均衡;

在讀操作負(fù)載均衡方面是可伸縮的

無(wú)寫(xiě)操作的高可靠性;

無(wú)寫(xiě)操作的負(fù)載均衡;

在寫(xiě)操作方面無(wú)伸縮性

同單獨(dú)服務(wù)器;在讀操作方面支持得較好讀操作密集型的、需要高可靠性和負(fù)載均衡的應(yīng)用Google

MySQL

MMM技術(shù)16精選課件ShardingvsPartitionShardingPartition存儲(chǔ)依賴(lài)可跨越DB可跨越物理機(jī)器可跨越表空間,不同的物理屬性不能跨DB存儲(chǔ)存儲(chǔ)方式分布式集中式擴(kuò)展性ScaleOut(橫向擴(kuò)展)ScaleUp(升級(jí)設(shè)備)可用性無(wú)單點(diǎn),需要處理跨數(shù)據(jù)事務(wù)存在單點(diǎn)(DB數(shù)據(jù)本身)應(yīng)用場(chǎng)景web2.0多數(shù)傳統(tǒng)應(yīng)用17精選課件數(shù)據(jù)切分-SQL實(shí)現(xiàn)方式優(yōu)點(diǎn)缺點(diǎn)垂直切分實(shí)現(xiàn)簡(jiǎn)單擴(kuò)展能力有限

強(qiáng)耦合的應(yīng)用不容易垂直切分讀寫(xiě)分離可有效分擔(dān)讀的壓力

主要在數(shù)據(jù)庫(kù)層擴(kuò)展,應(yīng)用修改小對(duì)讀寫(xiě)均衡的應(yīng)用擴(kuò)展能有限

依賴(lài)于數(shù)據(jù)庫(kù)本身的同步能力水平切分SaaS普遍使用

擴(kuò)展性強(qiáng)實(shí)施復(fù)雜18精選課件垂直shardinguserphrAppDAL19精選課件水平shardingPhr33%Phr33%AppDALPhr34%20精選課件讀寫(xiě)分離phrphrAppDAL讀/寫(xiě)讀21精選課件SQL數(shù)據(jù)訪問(wèn)區(qū)域(DAL)1.mysqlproxy

實(shí)現(xiàn)“讀寫(xiě)分離(Read/WriteSplitting)”?;镜脑硎亲屩鲾?shù)據(jù)庫(kù)處理事務(wù)性查詢(xún),而從數(shù)據(jù)庫(kù)處理SELECT查詢(xún)。數(shù)據(jù)庫(kù)復(fù)制被用來(lái)把事務(wù)性查詢(xún)導(dǎo)致的變更同步到集群中的從數(shù)據(jù)庫(kù)。2.Amoeba

Amoeba項(xiàng)目是分布式數(shù)據(jù)庫(kù)proxy開(kāi)發(fā)框架。座落與Client、DBServer(s)之間。對(duì)客戶(hù)

端透明。具有負(fù)載均衡、高可用性、sql過(guò)濾、讀寫(xiě)分離、可路由相關(guān)的query到目標(biāo)數(shù)據(jù)庫(kù)、可并發(fā)請(qǐng)

求多臺(tái)數(shù)據(jù)庫(kù)合并結(jié)果。

主要解決:

*降低數(shù)據(jù)切分帶來(lái)的復(fù)雜多數(shù)據(jù)庫(kù)結(jié)構(gòu)

*提供切分規(guī)則并降低數(shù)據(jù)切分規(guī)則給應(yīng)用帶來(lái)的影響

*降低db與客戶(hù)端的連接數(shù)

*讀寫(xiě)分離3.WebsphereII22精選課件Case123精選課件Case1數(shù)據(jù)生成分布規(guī)則:按照20會(huì)員每天采集一次監(jiān)控,每次采集10個(gè)指標(biāo)(都為數(shù)值型)計(jì)算,按照20萬(wàn)會(huì)員2010年全年的數(shù)據(jù)量,共計(jì)生成7.3億條記錄。分布在4個(gè)節(jié)點(diǎn)中,每臺(tái)設(shè)備1.825億條。共計(jì)50GB。血壓標(biāo)簽統(tǒng)計(jì)地區(qū)執(zhí)行時(shí)間120~15090~12080~90test0np_034539ms15732123140882123TransactionNameMinimumAverageMaximumStd.Deviation90Percentquery0.0010.0343.820.1560.0424精選課件Sql數(shù)據(jù)擴(kuò)展問(wèn)題25精選課件Case2

–hadoopHBase&Hive2003年Google三篇論文:GFS,MapReduce,Bigtable

Hbase是一個(gè)分布式開(kāi)源數(shù)據(jù)庫(kù),基于Hadoop分布式文件系統(tǒng),模仿并提供了基于Google文件系統(tǒng)的Bigtable數(shù)據(jù)庫(kù)的所有功能。其目標(biāo)是處理非常龐大的表,可以用普通的計(jì)算機(jī)處理超過(guò)10億行數(shù)據(jù),并且有數(shù)百萬(wàn)列元素組成的數(shù)據(jù)表。MapReduce是分布式計(jì)算軟件構(gòu)架,它可以支持大數(shù)據(jù)量的分布式并行處理。

26精選課件Hadoop軟件棧27精選課件Table&ColumnFamily

RowKey

Timestamp

ColumnFamily

血壓(高壓)血壓(低壓)phr_user1t312080t213090t1

phr_user2t514070t414585

RowKey:行鍵,Table的主鍵,Table中的記錄按照RowKey排序Timestamp:時(shí)間戳,每次數(shù)據(jù)操作對(duì)應(yīng)的時(shí)間戳,可以看作是數(shù)據(jù)的versionnumberColumnFamily:列簇,Table在水平方向有一個(gè)或者多個(gè)ColumnFamily組成,一個(gè)ColumnFamily中可以由任意多個(gè)Column組成,即ColumnFamily支持動(dòng)態(tài)擴(kuò)展,無(wú)需預(yù)先定義Column的數(shù)量以及類(lèi)型,所有Column均以二進(jìn)制格式存儲(chǔ),用戶(hù)需要自行進(jìn)行類(lèi)型轉(zhuǎn)換。28精選課件Case2

–hadoopHBase&Hive29精選課件Case2-hadoop&Hive交易名稱(chēng)交易響應(yīng)時(shí)間(單位:秒)AverageTPSMinimumAverageMaximum90PercentInsert空表0.0010.0121.0760.03595.863Insert(3.06億)0.0010.0120.0590.03995.758交易名稱(chēng)交易響應(yīng)時(shí)間(單位:秒)AverageTPSMinimumAverageMaximum90PercentQuery0.0140.1454.2380.19627.47交易響應(yīng)時(shí)間(單位:秒)4節(jié)點(diǎn)6節(jié)點(diǎn)8節(jié)點(diǎn)一個(gè)月數(shù)據(jù)140.007140.061147.029一年數(shù)據(jù)522.351285.998292.86730精選課件SQL與NoSQL整合方案-hadoop&HiveDBMS從MySQL讀寫(xiě)部分?jǐn)?shù)據(jù)讀NoSQLNoSQL同步1.DBMS保存全部數(shù)據(jù),主要完成交易類(lèi)數(shù)據(jù)的讀寫(xiě)2.通過(guò)同步技術(shù)把DBMS的數(shù)據(jù)同步到NoSQL數(shù)據(jù)庫(kù)中3.NoSQL負(fù)責(zé)完成歷史數(shù)據(jù)的查詢(xún)統(tǒng)計(jì)分析等工作31精選課件NoSQL數(shù)據(jù)庫(kù)--MongoDB32精選課件MongoDB與MySQL混搭采用MySQL與mongoDB混搭的模式,利用NoSQL數(shù)據(jù)的列可以動(dòng)態(tài)擴(kuò)展的優(yōu)勢(shì)來(lái)避免在關(guān)系數(shù)據(jù)庫(kù)為了擴(kuò)展所采用行轉(zhuǎn)列導(dǎo)致的數(shù)據(jù)爆炸性增長(zhǎng)的問(wèn)題1.面向集合的存儲(chǔ):適合存儲(chǔ)對(duì)象及JSON形式的數(shù)據(jù)。2.動(dòng)態(tài)查詢(xún):Mongo支持豐富的查詢(xún)表達(dá)式。3.完整的索引支持:包括文檔內(nèi)嵌對(duì)象及數(shù)組。Mongo的查詢(xún)優(yōu)化器會(huì)分析查詢(xún)表達(dá)式4.復(fù)制及自動(dòng)故障轉(zhuǎn)移。不適用:高度事務(wù)性的系統(tǒng)傳統(tǒng)的商業(yè)智能應(yīng)用33精選課件SQL數(shù)據(jù)庫(kù)擴(kuò)展的問(wèn)題ID

<100ID<200AppDALID<300ID<40034精選課件NoSQL數(shù)據(jù)庫(kù)擴(kuò)展phrphrAppDALphrphr35精選課件數(shù)據(jù)緩存工作原理DBMS客戶(hù)端App

ServerCacheDBMSCacheCacheCache第一次,從數(shù)據(jù)庫(kù)讀取數(shù)據(jù),并寫(xiě)入緩存第二次,從緩存讀取數(shù)據(jù),如果數(shù)據(jù)不存在,那么,在去數(shù)據(jù)庫(kù)查詢(xún)數(shù)據(jù)目的:避免磁盤(pán)IO提高效率,減輕數(shù)據(jù)庫(kù)壓力36精選課件開(kāi)源緩存對(duì)比實(shí)現(xiàn)方式優(yōu)點(diǎn)缺點(diǎn)Terracotta采用JVM的heap復(fù)制方式不是通過(guò)對(duì)象序列化的方式傳輸Java實(shí)現(xiàn)可以無(wú)縫整合到JEE應(yīng)用本身可以提供集群字節(jié)碼級(jí)的監(jiān)控可能會(huì)影響效率配置比較復(fù)雜memcachedC開(kāi)發(fā)效率高對(duì)CPU資源要求低水平擴(kuò)展性強(qiáng)非java應(yīng)用需要通過(guò)socket調(diào)用不提供集群技術(shù),需要自己實(shí)現(xiàn),比較復(fù)雜Ehcache/OSCache可以運(yùn)行在中間價(jià)同一個(gè)JVM中,執(zhí)行效力高集群需要作緩存同步水平擴(kuò)展能力有限需要占用JVM的heap37精選課件云平臺(tái)緩存方案客戶(hù)端App

ServerMemcacheEHCacheMemcacheMemcacheMemcacheApp

ServerEHCache采用Memcached作為分布式緩存為了保證系統(tǒng)執(zhí)行效率采用ehCache作為二級(jí)緩存在ehcache設(shè)置緩存時(shí)間,過(guò)期后到Memcached組成的緩存池獲得數(shù)據(jù)。該方案也可以采用Terracotta38精選課件應(yīng)用服務(wù)服務(wù)區(qū)域業(yè)務(wù)系統(tǒng)的主要業(yè)務(wù)邏輯運(yùn)行在應(yīng)用服務(wù)器中,所以,它承擔(dān)了更大的壓力,面臨如下挑戰(zhàn):1.大并發(fā)訪問(wèn)需要做應(yīng)用服務(wù)器集群2.系統(tǒng)為了更可用性和友好性支持無(wú)縫切換39精選課件應(yīng)用服務(wù)器session管理實(shí)現(xiàn)方式優(yōu)點(diǎn)缺點(diǎn)典型做法session復(fù)制復(fù)制負(fù)載可以得到極好均衡,也可以保持對(duì)fail-over支持sesion復(fù)制對(duì)網(wǎng)絡(luò)壓力比較大。

需要應(yīng)用服務(wù)器支持目前流行的中間件產(chǎn)品都支持stickysession實(shí)現(xiàn)簡(jiǎn)單,在負(fù)載均衡層或是proxy層做配置即可

不會(huì)因?yàn)閟ession同步給網(wǎng)絡(luò)帶來(lái)壓力不能實(shí)現(xiàn)完全負(fù)載均衡、無(wú)法實(shí)現(xiàn)failoverapache或是其它webserver做propxy基于cache集中式session應(yīng)用服務(wù)器是無(wú)狀態(tài),可實(shí)現(xiàn)完全負(fù)載均衡,不會(huì)帶來(lái)因?yàn)閟ession復(fù)制帶來(lái)的網(wǎng)絡(luò)壓力實(shí)施復(fù)雜,對(duì)于部分功能需要定制開(kāi)發(fā)使用Terracotta或是memcache等40精選課件云下有狀態(tài)應(yīng)用方案-memached-session客戶(hù)端App

ServerMemcacheMemcacheMemcacheMemcacheApp

Servermemcached-session-manager具有如下特性:1.支持tomcat6和tomcat72.能夠保持sticky會(huì)話和nonesticky會(huì)話3.能夠支持tomcat失敗轉(zhuǎn)移4.能夠支持Memcached失敗轉(zhuǎn)移5.實(shí)現(xiàn)session序列化6.可以實(shí)現(xiàn)session的異步存儲(chǔ)7.Session修改更新Memcached8.JMX管理和監(jiān)控41精選課件云下有狀態(tài)應(yīng)用方案-Terracotta客戶(hù)端App

ServerTerracoattTerracoattTerracoattTerracoattApp

Server1.Terracotta本身支持集群,避免單點(diǎn)故障(雙機(jī)或者多機(jī)鏡像)2.

Terracotta的基礎(chǔ)是分布式數(shù)據(jù)共享和線程協(xié)同3.不是通過(guò)對(duì)象序列化的方式傳輸,支持Field級(jí)別的變更同步4.不需要修改程序5.支持目前主流的中間價(jià)agentagent42精選課件Webserver區(qū)域ApachevsNginxvslighttpd反向代理等功能1.作為老牌HttpServer,ApacheHttpd在功能表現(xiàn)上令人滿(mǎn)意,配置相對(duì)簡(jiǎn)單,功能豐富并且穩(wěn)定,可以任意編譯添加所需功能的模塊。2.Nginx作為新興的HttpServer,在性能表現(xiàn)上令人滿(mǎn)意,功能相對(duì)豐富,作為功能相對(duì)簡(jiǎn)單的應(yīng)用前臺(tái)HttpServer是可以推薦的,而且HttpServer可以做到動(dòng)態(tài)更改配置文件,不需要長(zhǎng)時(shí)間中斷服務(wù)。3.Lighttpd性能表現(xiàn)很好,但是在功能上有很多不穩(wěn)定之處。43精選課件Webserver靜態(tài)資源分離靜態(tài)資源(圖片,js腳本,css等)使用單獨(dú)的服務(wù)器處理請(qǐng)求瀏覽器靜態(tài)資源靜態(tài)資源動(dòng)態(tài)請(qǐng)求動(dòng)態(tài)請(qǐng)求動(dòng)態(tài)請(qǐng)示動(dòng)態(tài)請(qǐng)示44精選課件分布式文件作用

SaaS業(yè)務(wù)系統(tǒng)面臨著海量小圖片數(shù)據(jù)的存儲(chǔ)問(wèn)題,這些圖片數(shù)據(jù)大小在幾K~幾十K不等但數(shù)目非常龐大,處理這些海量數(shù)據(jù)小文件傳統(tǒng)文件系統(tǒng)已經(jīng)不能滿(mǎn)足要求,系統(tǒng)在scaling的過(guò)程中都遇到了這樣的問(wèn)題:磁盤(pán)IO過(guò)高;備份困難;單點(diǎn)問(wèn)題,容量和讀寫(xiě)無(wú)法水平擴(kuò)展,還存在故障的可能。使用分布式存儲(chǔ)技術(shù)來(lái)解決圖片數(shù)據(jù)管理和容量擴(kuò)展等方面的問(wèn)題客戶(hù)端App

ServerNAS存儲(chǔ)/磁盤(pán)陣列App

Server45精選課件分布式文件系統(tǒng)工作原理存儲(chǔ)節(jié)點(diǎn),即StorageCluster,完成文件管理的所有功能。包括存儲(chǔ)、同步和提供存取接口;同時(shí)通過(guò)對(duì)metadata的管理實(shí)現(xiàn)了IO的并行和高效訪問(wèn)。具有云存儲(chǔ)虛擬、自治、高效特點(diǎn)的實(shí)驗(yàn)項(xiàng)目,支持多盤(pán)組、異構(gòu)整合。Tracker,即跟蹤器主要負(fù)責(zé)IO調(diào)度,通過(guò)負(fù)載均衡方式實(shí)現(xiàn)可靠、快速的資源存取。

Client可以是以Service的方式對(duì)云存儲(chǔ)提供IO服務(wù)。MogileDFS

VS

FastDFS

46精選課件Case3

GIS系統(tǒng)地圖柵格數(shù)據(jù)測(cè)試47精選課件消息隊(duì)列程序解耦消息可靠性到達(dá)異步通信提供效率48精選課件企業(yè)級(jí)消息隊(duì)列1.消息嚴(yán)格的排序;2.支持事務(wù)3.信息通過(guò)持久化的方式保證安全可靠代表產(chǎn)品:1.Apache

ActiveMQ2.JbossMQ3.IBM

MQ4.Weblogic

JMS適合場(chǎng)景:企業(yè)級(jí)應(yīng)用中消息可靠傳輸49精選課件互聯(lián)網(wǎng)消息隊(duì)列1.消息不需要嚴(yán)格的排序;2.不支持事務(wù)大多數(shù)情況可接受3.讀寫(xiě)數(shù)據(jù)非常快4.橫向擴(kuò)展性好代表產(chǎn)品:Kestrel適合場(chǎng)景:1.互聯(lián)網(wǎng)應(yīng)用中消息動(dòng)態(tài)50精選課件Case4

Kestrel性能表現(xiàn)線程并發(fā)數(shù)存入10000條消息總時(shí)間(單位:秒)平均TPS第一次第二次第三次平均13.1446286813.3789056913.2551921773.2595755163067.88102.3287159322.2632132852.2974953192.2964748454354.5502.6794187122.6436958022.5845161462.6358768873793.851精選課件負(fù)載均衡區(qū)域http重定向DNS負(fù)載均衡反向代理負(fù)載均衡IP負(fù)載均衡對(duì)應(yīng)產(chǎn)品包括:nginxapachehttpdLVS(網(wǎng)絡(luò)第四層工作)F5(硬件,四層/七層)redware(

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論