• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            tbwshc

            tbw

              C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              95 Posts :: 8 Stories :: 3 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(4)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            線程池模式一般分為兩種:L/F領(lǐng)導(dǎo)者與跟隨者模式、HS/HA半同步/半異步模式。
            HS/HA 半同步/ 半異步模式 :分為三層,同步層、隊(duì)列層、異步層,又稱為生產(chǎn)者消費(fèi)者模式,主線程處理I/O事件并解析然后再往隊(duì)列丟數(shù)據(jù),然后消費(fèi)者讀出數(shù)據(jù)進(jìn)行應(yīng)用邏輯處理;
            優(yōu)點(diǎn):簡(jiǎn)化編程將低層的異步I/O和高層同步應(yīng)用服務(wù)分離,且沒(méi)有降低低層服務(wù)性能。集中層間通信。
            缺點(diǎn):需要線程間傳輸數(shù)據(jù),因此而帶來(lái)的動(dòng)態(tài)內(nèi)存分配,數(shù)據(jù)拷貝,語(yǔ)境切換帶來(lái)開銷。高層服務(wù)不可能從底層異步服務(wù)效率中獲益。
            L/F 領(lǐng)導(dǎo)者跟隨者模式 :在LF線程池中,線程可處在3種線程狀態(tài)之一: leader、follower或processor。處于leader狀態(tài)的線程負(fù)責(zé)監(jiān)聽tb網(wǎng)絡(luò)端口,當(dāng)有消息到達(dá)時(shí),該線程負(fù)責(zé)消息分離,并從處于 follower狀態(tài)中的線程中按照某種機(jī)制如FIFO或基于優(yōu)先級(jí)等選出一個(gè)來(lái)當(dāng)新的leader,然后將自己設(shè)置為processor狀態(tài)去分配和處 理該事件。處理完畢后線程將自身的狀態(tài)設(shè)置為follower狀態(tài)去等待重新成為leader。在整個(gè)線程池中同一時(shí)刻只有一個(gè)線程可以處于leader 狀態(tài),這保證了同一事件不會(huì)被多個(gè)線程重復(fù)處理。
            缺點(diǎn):實(shí)現(xiàn)復(fù)雜性和缺乏靈活性;
            優(yōu)點(diǎn):增強(qiáng)了CPU高速緩存相似性,消除了動(dòng)態(tài)內(nèi)存分配和線程間的數(shù)據(jù)交換。
            兩種模式性能分析:
            L/F模式處理一個(gè)消息的時(shí)間為多路分離、分配、處理的時(shí)間,加上線程管理時(shí)間,LF中多個(gè)線程共享一個(gè)事件源,所以,需要協(xié)調(diào)它們間的行為,即 有同步開銷,L/F同步開銷僅為申請(qǐng)/釋放鎖的開銷,在LF處理請(qǐng)求過(guò)程中并不需要線程上下文切換,但是在線程由follower成為leader時(shí)需要 進(jìn)行線程上下文切換,所以當(dāng)兩個(gè)請(qǐng)求同時(shí)到達(dá)時(shí),這種上下文切換會(huì)影響第二個(gè)請(qǐng)求的處理時(shí)間,也會(huì)帶來(lái)一定的上下文開銷。
            T(L/F)=T(多路分離)+T(分配)+T(處理)+T(同步)+T(上下文)
            HS/HA模式監(jiān)聽線程和工作線程間通過(guò)一個(gè)消息隊(duì)列來(lái)交換數(shù)據(jù)。這會(huì)帶來(lái)數(shù)據(jù)傳遞開銷,。同時(shí),監(jiān)聽線程和工作線程都需要去訪問(wèn)消息隊(duì)列,造成 了資源的競(jìng)爭(zhēng),需要額外的同步機(jī)制來(lái)協(xié)調(diào)他們的行為,包括監(jiān)聽線程獲取和釋放資源鎖,對(duì)應(yīng)的工作線程獲取和釋放資源鎖,以及監(jiān)聽線程在將一個(gè)請(qǐng)求放入隊(duì)列 后通知工作線程帶來(lái)的開銷,我們稱此為同步開銷,HS/HA模式的同步開銷大于L/F的同步開銷,。一個(gè)請(qǐng)求由監(jiān)聽線程負(fù)責(zé)放入消息隊(duì)列,但是卻由工作線 程來(lái)處理,所以,每個(gè)請(qǐng)求都會(huì)造成一次線程上下文切
            換,由此帶來(lái)的開銷我們稱為上下文開銷。
                   T (H/H)=T(多路分離)+T(分配)+T(處理)+T(同步)+T(數(shù)據(jù)傳遞)+T(上下文)
            從上面分析可以看出沒(méi)有并發(fā)情況下L/F模式線程池模式性能優(yōu)于HS/HA模式。
            并發(fā)性能分析:
            T(多路分離)、T(分配):LF和HH中把每一個(gè)消息的到來(lái)當(dāng)作一個(gè)事件來(lái)處理。tbw事件分配所做的工作是在一個(gè)事件處理器注冊(cè)表中為一個(gè)事件查找 事件處理器。這一步驟花費(fèi)的時(shí)間隨著當(dāng)前注冊(cè)的事件處理器的個(gè)數(shù)變化。當(dāng)線程池接受用戶連接請(qǐng)求后會(huì)為每一個(gè)連接注冊(cè)一個(gè)事件處理器,所有通過(guò)該連接發(fā)來(lái) 的請(qǐng)求都將由同一個(gè)事件處理器來(lái)處理。而事件處理器表采用一個(gè)平衡二叉樹來(lái)實(shí)現(xiàn)。因此,事件分配的時(shí)間可以認(rèn)為是隨著并發(fā)用戶數(shù)的增大而增大;
            T(處理)處理消息和管理線程所需的時(shí)間都不受并發(fā)用戶數(shù)的影響。
            T(線程管理),多線程帶來(lái)的線程管理開銷只會(huì)隨著線程池中線程數(shù)而變化,相對(duì)固定。
            LF和HH的吞吐量會(huì)隨著并發(fā)用戶數(shù)的增加而增加。當(dāng)并發(fā)用戶數(shù)達(dá)到一定數(shù)量時(shí),CPU成為系統(tǒng)瓶頸,此后增大并發(fā)用戶數(shù)不僅不能增加并發(fā)處理的請(qǐng)求個(gè)數(shù),反而會(huì)加大多路分離和分配的時(shí)間,從而使得系統(tǒng)吞吐量下降。
                   最佳性能時(shí)線程線:
            隨著線程數(shù)的增多吞吐量不斷增大,當(dāng)達(dá)到最大值后有一個(gè)短暫的保持階段,此后繼續(xù)增大線程數(shù)反而會(huì)使得吞吐量減小。而且當(dāng)請(qǐng)求類型為計(jì)算密集型時(shí)線程數(shù)對(duì)
            HH 的吞吐量的影響并不是很明顯。原因是HH線程池在增加線程數(shù)時(shí)線程管理開銷也有較大幅度的增加。因此,通過(guò)增大線程數(shù)來(lái)改善系統(tǒng)性能對(duì)HH來(lái)說(shuō)并不是一種有效的方法。

            posted on 2013-06-18 16:42 tbwshc 閱讀(2484) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            亚洲国产精品久久66| 欧美噜噜久久久XXX| 99久久国产免费福利| 精品国产91久久久久久久a| 国产精品女同一区二区久久| 欧洲性大片xxxxx久久久| 91精品国产9l久久久久| 久久精品国产免费| 久久久精品人妻无码专区不卡 | 精品国产乱码久久久久久呢| 国产毛片欧美毛片久久久| 久久不射电影网| 久久狠狠爱亚洲综合影院| 国产伊人久久| 香蕉久久夜色精品国产小说| 亚洲精品无码久久一线| 色诱久久av| 日本久久久精品中文字幕| 欧洲精品久久久av无码电影 | 日本五月天婷久久网站| 国产叼嘿久久精品久久| 99国产欧美精品久久久蜜芽| 18岁日韩内射颜射午夜久久成人| 九九久久精品国产| 青青草国产精品久久| 蜜臀av性久久久久蜜臀aⅴ | 精品国产乱码久久久久久浪潮| 精品久久久久中文字幕日本| 久久伊人精品一区二区三区| 人妻中文久久久久| 久久精品亚洲福利| 久久久久久久亚洲精品| 久久国产视频99电影| 久久免费观看视频| 久久精品无码一区二区三区免费| 久久精品国产只有精品66| 久久婷婷五月综合色99啪ak| 性高湖久久久久久久久AAAAA| 一本色道久久88综合日韩精品 | 久久精品免费网站网| 久久青青草原精品国产软件|