xxxx18一20岁hd,夜夜躁狠狠躁日日躁视频,精品久久久久久成人av,久久久国产精品无码一区二区三区

您的位置:首 頁 > 新聞中心 > 行業(yè)動(dòng)態(tài) > 盡可能使用異步通信

行業(yè)動(dòng)態(tài)

盡可能使用異步通信

發(fā)布:2018-07-22 17:08:02 瀏覽:3719

盡可能使用異步通信,而不是同步通信。服務(wù)和各個(gè)層之間的所有調(diào)用。使用程序設(shè)計(jì)語言專有的調(diào)用,確保發(fā)出了請(qǐng)求,且沒有在等待。同步詞用會(huì)使整個(gè)程序執(zhí)行停止來等待一個(gè)響應(yīng),從而把所有的展務(wù)和各個(gè)層維系在一起,造成級(jí)聯(lián)性的故障。使用異步通信技術(shù)可以確保每個(gè)服務(wù)和層是獨(dú)立的,這樣系統(tǒng)的可擴(kuò)展程度比所有部件都掲合在一起的系統(tǒng)大得多。

一般的異步調(diào)用,無論是在一個(gè)服務(wù)內(nèi)還是在兩個(gè)服務(wù)間,實(shí)現(xiàn)起來都比實(shí)現(xiàn)同步調(diào)用難得多。原因在于異步調(diào)用通常都需要通知最初發(fā)送消息的服務(wù),告訴它請(qǐng)求已經(jīng)完成了。如果你發(fā)送完請(qǐng)求就不再理會(huì),那就沒必要再與調(diào)用方法通信或協(xié)作了。實(shí)現(xiàn)這個(gè)的方法很多且很簡(jiǎn)單,包括如下所示的PHP函數(shù),它利用了符號(hào)在后臺(tái)運(yùn)行進(jìn)程。

但是,并非所有服務(wù)發(fā)出請(qǐng)求后就不再管它什么狀態(tài)了。通常,調(diào)用方法想知道被調(diào)用的方法是什么時(shí)候完成的。原因可能是在結(jié)果返回前發(fā)生了其他的處理。可以設(shè)想一個(gè)電子商務(wù)平臺(tái)上的場(chǎng)景,即需要根據(jù)抵折扣代碼重新計(jì)算郵費(fèi)。理想的情況是同步執(zhí)行這兩個(gè)任務(wù),而不是計(jì)算郵費(fèi)(可能需要調(diào)用供應(yīng)商的第三方法),然后再對(duì)購物車中的物品處理折扣代碼。但在兩者都完成之前,我們不能把最終結(jié)果發(fā)送給用戶。

在大多數(shù)程序設(shè)計(jì)語言中有一種機(jī)制,是為母方法和被調(diào)用的異步子方法之間的協(xié)調(diào)和通信設(shè)計(jì)的,叫作回調(diào)。在C/C++語言中,這是通過函數(shù)指針實(shí)現(xiàn)的。在Java語言中,是通過對(duì)象引用實(shí)現(xiàn)的。有許多設(shè)計(jì)模式使用回調(diào),如委托設(shè)計(jì)模式和觀察者設(shè)計(jì)模式。但是為什么要自找麻煩異步調(diào)用方法或服務(wù)呢?

我們之所以要自找麻煩進(jìn)行異步調(diào)用,是因?yàn)槿绻捎猛秸{(diào)用,所有的方法、服務(wù)和層都會(huì)被維系在一起,它們中的任何一個(gè)運(yùn)行放慢或出了故障,都會(huì)造成整個(gè)系統(tǒng)發(fā)生延遲的級(jí)聯(lián)故障。把所有部件串聯(lián)起來會(huì)導(dǎo)致故障成倍增長(zhǎng)。我們只針對(duì)可用性討論了這一概念,但它其實(shí)也適用于每KLOC存在bug的概率。如果方法A、B和和C都有99.99%6的機(jī)會(huì)沒有bug,而且A方法同步地調(diào)用B方法,B方法同步地調(diào)用C方法,那么整個(gè)系統(tǒng)的邏輯流中有bug的概率就是99.99%×99.99%×99.9%=99.97%。

我們介紹過,根據(jù)不同的客戶,把系統(tǒng)的資源池劃分成獨(dú)立的泳道。這樣做的好處是如果一個(gè)泳道出了問題,不會(huì)術(shù)生到其他客戶的泳道,這可以將問題的影響最小化。此外,檢測(cè)故障也容易得多,因?yàn)橥粋€(gè)代碼右采用異步調(diào)用的模塊或方法也具有這種能力。

異步調(diào)用可以防止故障或運(yùn)行減慢這種情況傳播,而且有助于在發(fā)生問題時(shí)確定bug在哪里。許多遇到過數(shù)據(jù)庫問題的人都在應(yīng)用或Web層見證過這一點(diǎn),因?yàn)橐粋€(gè)很慢的查詢使得連接受到阻礙堆積起來了,然后應(yīng)用服務(wù)器上的套接字一直保持打開狀態(tài)。數(shù)據(jù)庫的監(jiān)控系統(tǒng)可能不會(huì)發(fā)出故障信號(hào),但應(yīng)用的監(jiān)控系統(tǒng)則會(huì)發(fā)出故障信號(hào)。這種情況是在應(yīng)用和數(shù)據(jù)庫服務(wù)器間使用了同步調(diào)用造成的,而且這種問題還很難診斷。

當(dāng)然,不能對(duì)系統(tǒng)中所有方法和層之間的調(diào)用都使用異步調(diào)用,所以真正的問題是哪些調(diào)用應(yīng)該采用異步調(diào)用。在使用非異步調(diào)用時(shí),應(yīng)該具有超時(shí)設(shè)置,能夠在同步調(diào)用的方法或服務(wù)失敗時(shí),優(yōu)雅地處理錯(cuò)誤或繼續(xù)進(jìn)行處理。決定哪些調(diào)用可以采用異步模式的方法是基于下列標(biāo)準(zhǔn)分析每個(gè)調(diào)用。

外部API/第三方。調(diào)用的是第三方的方法或外部API嗎?如果是,那么一定要采用異步調(diào)用。調(diào)用外部方法可能出現(xiàn)的問題太多,所以不能采用同步調(diào)用。你一定不想讓自己的系統(tǒng)健康和可用性與你不能控制的系統(tǒng)緊密關(guān)聯(lián)在一起。

長(zhǎng)時(shí)間運(yùn)行的進(jìn)程。要調(diào)用的進(jìn)程是不是運(yùn)行時(shí)間很長(zhǎng)?運(yùn)行的計(jì)算需求和1O需求是不是很高?如果是,最好采用異步調(diào)用。運(yùn)行慢的進(jìn)程是比停機(jī)更棘手的問題。

容易出錯(cuò)的/頻繁更改的方法。調(diào)用的方法會(huì)頻繁更改嗎?修改的次數(shù)越多,代碼中有bug的可能性越大。不要把關(guān)鍵代碼和需要頻繁更改的代碼關(guān)聯(lián)在一起,否則會(huì)造成故障數(shù)量增加。

時(shí)間約束。當(dāng)兩個(gè)進(jìn)程間沒有時(shí)間約束時(shí),考慮發(fā)出請(qǐng)求后就不再管什么狀態(tài)的子進(jìn)程。這個(gè)場(chǎng)景可能是新注冊(cè)的用戶收到一封歡迎郵件。雖然系統(tǒng)關(guān)心郵件是否發(fā)送出去了,但不應(yīng)該等待郵件發(fā)送出去了才給用戶返回注冊(cè)頁面的結(jié)果。

對(duì)于決定網(wǎng)站制作是否使用異步調(diào)用來說,這只是幾條最重要的標(biāo)準(zhǔn)。我們把歸納所有標(biāo)準(zhǔn)作為練習(xí)留給讀者。雖然我們能再列出十條標(biāo)準(zhǔn),但隨著列出標(biāo)準(zhǔn)的增多,它們可能更適用于特定的系統(tǒng)。另外,和你的開發(fā)團(tuán)隊(duì)一起做這個(gè)練習(xí),這會(huì)讓團(tuán)隊(duì)中的每個(gè)人都注意到使用同步調(diào)用和異步調(diào)用的利弊,從而遵循本原則,更好地?cái)U(kuò)展系統(tǒng)。

>>> 查看《盡可能使用異步通信》更多相關(guān)資訊 <<<

本文地址:http://ccrxjh.com/news/html/3518.html

趕快點(diǎn)擊我,讓我來幫您!
香港a片| 善良的小峓子hd完整视频中文| 亚洲中文字幕无码久久2021| 色综合久久蜜芽国产精品| 99久久久无码国产精品免费| 裸体女模露出生殖部位| 中文在线无码高潮潮喷| 金瓶悔1一5扬思敏完整版| 亚洲AV无码码潮喷在线观看| 请给我运动员们| 吊侵犯の奶水授乳羞羞漫画 | 亚洲AV成人一区二区三区AV| 国产成人精品A视频一区| 熟妇女人妻丰满少妇中文字幕| 无码少妇精品一区二区免费| 高h喷水荡肉自慰爽文np| 18以下岁禁止1000部免费| 精品乱人伦一区二区三区| 亚洲色欲一区二区三区在线观看 | 国产成人无码一区二区三区| 亚洲av无码乱码在线观看性色 | 冲田杏梨在线观看| 亚洲色大成网站WWW| 国产精品视频一区二区三区不卡| 欧美 亚洲 国产 另类| 国产一区二区三区精品| 色欲久久精品亚洲AV无码一区| 无码AV免费一区二区三区试看| 国产亚洲精品aaaa片小说| 做爰视频试看30分钟| 国产精品久久久久无码av色戒| 把腿张开老子cao烂你动态图| 日韩av无码免费播放| 国产精品无码一本二本三本色∴| 无码八a片人妻少妇久久| 凹凸精品熟女在线观看| 亚洲中文字幕在线| 久久久久黑人强伦姧人妻| 色AV色婷婷66人妻久久久 | 亚洲国产av一区二区三区| 老头边吃奶边弄进去呻吟|