[SEDA]架構(gòu)模型


//
SEDA架構(gòu)模型 - 簡(jiǎn)書
http://www.reibang.com/p/e184fdc0ade4

//
一狗唉、傳統(tǒng)并發(fā)模型的缺點(diǎn)
基于線程的并發(fā)


image.png

特點(diǎn):每任務(wù)一線程直線式的編程使用資源昂高纸兔,context切換代價(jià)高始衅,競(jìng)爭(zhēng)鎖昂貴太多線程可能導(dǎo)致吞吐量下降,響應(yīng)時(shí)間暴漲。

//
基于事件的并發(fā)模型

image.png

特點(diǎn):?jiǎn)尉€程處理事件每個(gè)并發(fā)流實(shí)現(xiàn)為一個(gè)有限狀態(tài)機(jī)應(yīng)用直接控制并發(fā)負(fù)載增加的時(shí)候幸逆,吞吐量飽和響應(yīng)時(shí)間線性增長(zhǎng)

//
二票从、SEDA架構(gòu)

image.png

特點(diǎn):
(1)服務(wù)通過queue分解成stage: 每個(gè)stage代表FSM的一個(gè)狀態(tài)集合 Queue引入了控制邊界
(2)使用線程池驅(qū)動(dòng)stage的運(yùn)行: 將事件處理同線程的創(chuàng)建和調(diào)度分離 Stage可以順序或者并行執(zhí)行 Stage可能在內(nèi)部阻塞晰房,給阻塞的stage分配較少的線程

//
三、小結(jié)
SEDA主要還是為了解決傳統(tǒng)并發(fā)模型的缺點(diǎn)窍荧,通過將服務(wù)器的處理劃分各個(gè)Stage辉巡,利用queue連接起來形成一個(gè)pipeline的處理鏈,并且在Stage中利用控制器進(jìn)行資源的調(diào)控蕊退。資源的調(diào)度依據(jù)運(yùn)行時(shí)的狀態(tài)監(jiān)視的數(shù)據(jù)來進(jìn)行郊楣,從而形成一種反應(yīng)控制的機(jī)制,而stage的劃分也簡(jiǎn)化了編程瓤荔,并且通過queue和每個(gè)stage的線程池來分擔(dān)高并發(fā)請(qǐng)求并保持吞吐量和響應(yīng)時(shí)間的平衡净蚤。簡(jiǎn)單來說,我看中的是服務(wù)器模型的清晰劃分以及反應(yīng)控制输硝。


//
基于SEDA模型的交易中間件服務(wù)器架構(gòu)研究_百度學(xué)術(shù)
http://xueshu.baidu.com/s?wd=paperuri:(334b6c1fae6861e2113e1e70c6442314)&filter=sc_long_sign&sc_ks_para=q%3D%E5%9F%BA%E4%BA%8ESEDA%E6%A8%A1%E5%9E%8B%E7%9A%84%E4%BA%A4%E6%98%93%E4%B8%AD%E9%97%B4%E4%BB%B6%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%9E%B6%E6%9E%84%E7%A0%94%E7%A9%B6&tn=SE_baiduxueshu_c1gjeupa&ie=utf-8&sc_us=3847411028352465752
在大型分布式企業(yè)環(huán)境中,應(yīng)用通常面對(duì)著異構(gòu)的網(wǎng)絡(luò)環(huán)境今瀑、不同的硬件平臺(tái)以及相異的通訊協(xié)議。如果通過應(yīng)用自身來解決服務(wù)器之間的通訊所帶來的數(shù)據(jù)点把、協(xié)議轉(zhuǎn)換問題,毫無疑問將嚴(yán)重影響應(yīng)用開發(fā)的復(fù)雜程度和開發(fā)效率橘荠。而使用中間件(Middleware)可以輕松解決這些問題。針對(duì)民航業(yè)務(wù)實(shí)時(shí)并發(fā)請(qǐng)求多郎逃、業(yè)務(wù)功能復(fù)雜多變哥童、數(shù)據(jù)量大、業(yè)務(wù)之間聯(lián)系密切等業(yè)務(wù)特點(diǎn)設(shè)計(jì)了中間件服務(wù)器的軟件架構(gòu)衣厘。
本文分析當(dāng)前流行的服務(wù)器并發(fā)模型的優(yōu)缺點(diǎn),選擇了分階段的事件驅(qū)動(dòng)架構(gòu)(Staged Event‐Driven Architecture,SEDA)作為服務(wù)器的架構(gòu)基礎(chǔ),以SEDA分階段思想對(duì)民航業(yè)務(wù)進(jìn)行階段劃分,設(shè)計(jì)分布式環(huán)境下的中間件平臺(tái)部署及運(yùn)行結(jié)構(gòu),以兩層SEDA共同完成對(duì)用戶業(yè)務(wù)分階段特性的支持如蚜。該架構(gòu)使得應(yīng)用開發(fā)人員無需關(guān)心異步調(diào)用細(xì)節(jié),這大大降低了應(yīng)用開發(fā)的復(fù)雜程度,提升了開發(fā)效率压恒。
實(shí)驗(yàn)結(jié)果表明基于SEDA的服務(wù)器軟件架構(gòu)比基于線程池模型的服務(wù)器軟件架構(gòu)擁有更好的處理高并發(fā)服務(wù)請(qǐng)求的能力,能夠使大規(guī)模民航旅客服務(wù)信息系統(tǒng)有效應(yīng)對(duì)高并發(fā)高負(fù)載環(huán)境影暴。同時(shí)本文分析了中間件平臺(tái)的總體結(jié)構(gòu),根據(jù)其結(jié)構(gòu)特點(diǎn)設(shè)計(jì)了負(fù)載均衡機(jī)制,提出了固定比例因子負(fù)載均衡算法并進(jìn)行魯棒性分析。為了提高中間件平臺(tái)的魯棒性和可靠性,根據(jù)其軟硬件結(jié)構(gòu)特點(diǎn)在固定比例因子負(fù)載均衡算法的基礎(chǔ)上提出了動(dòng)態(tài)負(fù)載均衡算法探赫。同時(shí)設(shè)計(jì)了維護(hù)負(fù)載度量指標(biāo)所需的數(shù)據(jù)結(jié)構(gòu)以及在這種數(shù)據(jù)結(jié)構(gòu)下維護(hù)該指標(biāo)的方法,并進(jìn)行了實(shí)驗(yàn)對(duì)比驗(yàn)證型宙。實(shí)驗(yàn)結(jié)果表明負(fù)載均衡算法能使中間件平臺(tái)的魯棒性和可靠性得到提升。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末伦吠,一起剝皮案震驚了整個(gè)濱河市妆兑,隨后出現(xiàn)的幾起案子魂拦,更是在濱河造成了極大的恐慌,老刑警劉巖搁嗓,帶你破解...
    沈念sama閱讀 222,729評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件芯勘,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡腺逛,警方通過查閱死者的電腦和手機(jī)荷愕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來棍矛,“玉大人安疗,你說我怎么就攤上這事」晃” “怎么了荐类?”我有些...
    開封第一講書人閱讀 169,461評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)茁帽。 經(jīng)常有香客問我玉罐,道長(zhǎng),這世上最難降的妖魔是什么潘拨? 我笑而不...
    開封第一講書人閱讀 60,135評(píng)論 1 300
  • 正文 為了忘掉前任厌小,我火速辦了婚禮,結(jié)果婚禮上战秋,老公的妹妹穿的比我還像新娘璧亚。我一直安慰自己,他們只是感情好脂信,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,130評(píng)論 6 398
  • 文/花漫 我一把揭開白布癣蟋。 她就那樣靜靜地躺著,像睡著了一般狰闪。 火紅的嫁衣襯著肌膚如雪疯搅。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,736評(píng)論 1 312
  • 那天埋泵,我揣著相機(jī)與錄音幔欧,去河邊找鬼。 笑死丽声,一個(gè)胖子當(dāng)著我的面吹牛礁蔗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播雁社,決...
    沈念sama閱讀 41,179評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼浴井,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了霉撵?” 一聲冷哼從身側(cè)響起磺浙,我...
    開封第一講書人閱讀 40,124評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤洪囤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后撕氧,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瘤缩,經(jīng)...
    沈念sama閱讀 46,657評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,723評(píng)論 3 342
  • 正文 我和宋清朗相戀三年伦泥,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了款咖。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,872評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡奄喂,死狀恐怖铐殃,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情跨新,我是刑警寧澤富腊,帶...
    沈念sama閱讀 36,533評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站域帐,受9級(jí)特大地震影響赘被,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜肖揣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,213評(píng)論 3 336
  • 文/蒙蒙 一民假、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧龙优,春花似錦羊异、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至宰衙,卻和暖如春平道,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背供炼。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評(píng)論 1 274
  • 我被黑心中介騙來泰國(guó)打工一屋, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人袋哼。 一個(gè)月前我還...
    沈念sama閱讀 49,304評(píng)論 3 379
  • 正文 我出身青樓冀墨,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親先嬉。 傳聞我的和親對(duì)象是個(gè)殘疾皇子轧苫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,876評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • @synthesize和@dynamic分別有什么作用含懊?@property有兩個(gè)對(duì)應(yīng)的詞,一個(gè)是 @synthes...
    筆筆請(qǐng)求閱讀 517評(píng)論 0 1
  • 一衅胀、傳統(tǒng)并發(fā)模型的缺點(diǎn)基于線程的并發(fā) 基于事件的并發(fā)模型 因在閱讀的過程中感覺非常好岔乔,所以轉(zhuǎn)載該文章,轉(zhuǎn)自莊周蝶夢(mèng)
    小程故事多閱讀 11,411評(píng)論 2 15
  • ¥關(guān)閉¥ 【雷霆戰(zhàn)機(jī)】 〖http://pan.baidu.com/s/1kVstszX〗 《解壓源碼后直接用AI...
    小菜c閱讀 9,464評(píng)論 0 19
  • ¥開啟¥ 【雷霆戰(zhàn)機(jī)】 〖http://pan.baidu.com/s/1kVstszX〗 《解壓源碼后直接用AI...
    小菜c閱讀 3,553評(píng)論 1 10
  • 看文章易茁影,寫文章難,想寫好丧凤,更難募闲。 為何難?只因體會(huì)人生愿待,品嘗不過幾種滋味浩螺。看書太少仍侥,感悟不夠要出,閉眼擠腦門,也擠不...
    春暖心閱讀 128評(píng)論 0 1