架構(gòu):第六章:系統(tǒng)架構(gòu)
傳統(tǒng)架構(gòu)
支持1000并發(fā)架構(gòu)
Tomcat 默認(rèn)配置的最大請求數(shù)是150,也就是說同時(shí)支持150個(gè)并發(fā)。具體能承載多少并發(fā),需要看硬件的配置,CPU
越多性能越高,分配給JVM的內(nèi)存越多性能也就越高,但也會(huì)加重GC的負(fù)擔(dān)。當(dāng)某個(gè)應(yīng)用擁有 250 個(gè)以上并發(fā)的時(shí)候,應(yīng)考慮應(yīng)用服務(wù)器的集群。
支持10000并發(fā)架構(gòu)
需要按照功能點(diǎn)把系統(tǒng)拆分,拆分成獨(dú)立的功能。單獨(dú)為某一個(gè)節(jié)點(diǎn)添加服務(wù)器。需要系統(tǒng)之間配合才能完成整個(gè)業(yè)務(wù)邏輯。叫做分布式。
分布式架構(gòu):多個(gè)子系統(tǒng)相互協(xié)作才能完成業(yè)務(wù)流程。系統(tǒng)之間需要進(jìn)行通信。
集群:同一個(gè)工程部署到多臺(tái)服務(wù)器上。
分布式架構(gòu):把系統(tǒng)按照模塊拆分成多個(gè)子系統(tǒng)。
優(yōu)點(diǎn):
把模塊拆分,使用接口通信,降低模塊之間的耦合度。
把項(xiàng)目拆分成若干個(gè)子項(xiàng)目,不同的團(tuán)隊(duì)負(fù)責(zé)不同的子項(xiàng)目。
增加功能時(shí)只需要再增加一個(gè)子項(xiàng)目,調(diào)用其他系統(tǒng)的接口就可以。
可以靈活的進(jìn)行分布式部署。
缺點(diǎn):
1、系統(tǒng)之間交互需要使用遠(yuǎn)程通信,接口開發(fā)增加工作量。
2、各個(gè)模塊有一些通用的業(yè)務(wù)邏輯無法共用。
基于soa的架構(gòu)
SOA:Service Oriented Architecture面向服務(wù)的架構(gòu)。也就是把工程拆分成服務(wù)層、表現(xiàn)層兩個(gè)工程。服務(wù)層中包含業(yè)務(wù)邏輯,只需要對外提供服務(wù)即可。表現(xiàn)層只需要處理和頁面的交互,業(yè)務(wù)邏輯都是調(diào)用服務(wù)層的服務(wù)來實(shí)現(xiàn)。
問題:分布式架構(gòu)和soa架構(gòu)有什么區(qū)別?
SOA是面向服務(wù)的架構(gòu),將業(yè)務(wù)邏輯提煉成共用服務(wù),對外提供服務(wù),也不一定就用webservice通信,也可以是socket、EJB,dubbox等等。目標(biāo)就是建成一個(gè)服務(wù)組件的“超市”,供別人自行選用。
分布式:主要還是從部署的角度,將應(yīng)用按照訪問壓力進(jìn)行歸類,主要目標(biāo)是充分利用服務(wù)器的資源,避免資源分配不均。