云結構(cloud architecture)主要解決擴展性和并發(fā)的問題宁否,是最容易擴展的架構缩麸。
它的高擴展性铸磅,主要原因是沒使用中央數(shù)據庫,而是把數(shù)據都復制到內存中杭朱,變成可復制的內存數(shù)據單元阅仔。然后,業(yè)務處理能力封裝成一個個處理單元(prcessing unit)弧械。訪問量增加八酒,就新建處理單元;訪問量減少刃唐,就關閉處理單元羞迷。由于沒有中央數(shù)據庫,所以擴展性的最大瓶頸消失了画饥。由于每個處理單元的數(shù)據都在內存里衔瓮,最好要進行數(shù)據持久化。
這個模式主要分成兩部分:處理單元(processing unit)和虛擬中間件(virtualized middleware)抖甘。
處理單元:實現(xiàn)業(yè)務邏輯
虛擬中間件:負責通信热鞍、保持sessions、數(shù)據復制衔彻、分布式處理薇宠、處理單元的部署。
虛擬中間件又包含四個組件艰额。
消息中間件(Messaging Grid):管理用戶請求和session澄港,當一個請求進來以后,決定分配給哪一個處理單元柄沮。
數(shù)據中間件(Data Grid):將數(shù)據復制到每一個處理單元回梧,即數(shù)據同步逐工。保證某個處理單元都得到同樣的數(shù)據。
處理中間件(Processing Grid):可選漂辐,如果一個請求涉及不同類型的處理單元泪喊,該中間件負責協(xié)調處理單元
部署中間件(Deployment Manager):負責處理單元的啟動和關閉,監(jiān)控負載和響應時間髓涯,當負載增加袒啼,就新啟動處理單元,負載減少纬纪,就關閉處理單元蚓再。
優(yōu)點
高負載,高擴展性
動態(tài)部署
缺點
實現(xiàn)復雜包各,成本較高
主要適合網站類應用摘仅,不合適大量數(shù)據吞吐的大型數(shù)據庫應用
較難測試