国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

免費(fèi)的海報(bào)模板網(wǎng)站優(yōu)化關(guān)鍵詞的方法

免費(fèi)的海報(bào)模板網(wǎng)站,優(yōu)化關(guān)鍵詞的方法,做app模板網(wǎng)站有哪些內(nèi)容,太原市制作網(wǎng)站服務(wù)器編程基本框架 雖然服務(wù)器程序種類繁多,但其基本框架都一樣,不同之處在于邏輯處理。 I/O 處理單元是服務(wù)器管理客戶連接的模塊。它通常要完成以下工作:等待并接受新的客戶連接,接收客戶數(shù)據(jù),將服務(wù)器響應(yīng)數(shù)據(jù)返回…

服務(wù)器編程基本框架

雖然服務(wù)器程序種類繁多,但其基本框架都一樣,不同之處在于邏輯處理。

I/O 處理單元是服務(wù)器管理客戶連接的模塊。它通常要完成以下工作:等待并接受新的客戶連接,接收客戶數(shù)據(jù),將服務(wù)器響應(yīng)數(shù)據(jù)返回給客戶端。但是數(shù)據(jù)的收發(fā)不一定在 I/O 處理單元中執(zhí)行,也可能在邏輯單元中執(zhí)行,具體在何處執(zhí)行取決于事件處理模式。
一個(gè)邏輯單元通常是一個(gè)進(jìn)程或線程。它分析并處理客戶數(shù)據(jù),然后將結(jié)果傳遞給 I/O 處理單元或者直接發(fā)送給客戶端(具體使用哪種方式取決于事件處理模式)。服務(wù)器通常擁有多個(gè)邏輯單元,以實(shí)現(xiàn)對(duì)多個(gè)客戶任務(wù)的并發(fā)處理。
網(wǎng)絡(luò)存儲(chǔ)單元可以是數(shù)據(jù)庫(kù)、緩存和文件,但不是必須的。
請(qǐng)求隊(duì)列是各單元之間的通信方式的抽象。I/O 處理單元接收到客戶請(qǐng)求時(shí),需要以某種方式通知一個(gè)邏輯單元來(lái)處理該請(qǐng)求。同樣,多個(gè)邏輯單元同時(shí)訪問(wèn)一個(gè)存儲(chǔ)單元時(shí),也需要采用某種機(jī)制來(lái)協(xié)調(diào)處理競(jìng)態(tài)條件。請(qǐng)求隊(duì)列通常被實(shí)現(xiàn)為池的一部分。

兩種高效的事件處理模式

服務(wù)器程序通常需要處理三類事件:I/O 事件、信號(hào)及定時(shí)事件。有兩種高效的事件處理模式:Reactor和 Proactor,同步 I/O 模型通常用于實(shí)現(xiàn) Reactor 模式,異步 I/O 模型通常用于實(shí)現(xiàn) Proactor 模式。

Reactor

要求主線程(I/O處理單元)只負(fù)責(zé)監(jiān)聽文件描述符上是否有事件發(fā)生,有的話就立即將該事件通知工作線程(邏輯單元),將 socket 可讀可寫事件放入請(qǐng)求隊(duì)列,交給工作線程處理。除此之外,主線程不做任何其他實(shí)質(zhì)性的工作。讀寫數(shù)據(jù),接受新的連接,以及處理客戶請(qǐng)求均在工作線程中完成。
使用同步 I/O(以 epoll_wait 為例)實(shí)現(xiàn)的 Reactor 模式的工作流程是:
1. 主線程往 epoll 內(nèi)核事件表中注冊(cè) socket 上的讀就緒事件。
2. 主線程調(diào)用 epoll_wait 等待 socket 上有數(shù)據(jù)可讀。
3. 當(dāng) socket 上有數(shù)據(jù)可讀時(shí), epoll_wait 通知主線程。主線程則將 socket 可讀事件放入請(qǐng)求隊(duì)列。
4. 睡眠在請(qǐng)求隊(duì)列上的某個(gè)工作線程被喚醒,它從 socket 讀取數(shù)據(jù),并處理客戶請(qǐng)求,然后往 epoll內(nèi)核事件表中注冊(cè)該 socket 上的寫就緒事件。
5. 當(dāng)主線程調(diào)用 epoll_wait 等待 socket 可寫。
6. 當(dāng) socket 可寫時(shí),epoll_wait 通知主線程。主線程將 socket 可寫事件放入請(qǐng)求隊(duì)列。
7. 睡眠在請(qǐng)求隊(duì)列上的某個(gè)工作線程被喚醒,它往 socket 上寫入服務(wù)器處理客戶請(qǐng)求的結(jié)果。

Proactor

Proactor 模式將所有 I/O 操作都交給主線程和內(nèi)核來(lái)處理(進(jìn)行讀、寫),工作線程僅僅負(fù)責(zé)業(yè)務(wù)邏輯。使用異步 I/O 模型(以 aio_read 和 aio_write 為例)實(shí)現(xiàn)的 Proactor 模式的工作流程是:
1. 主線程調(diào)用 aio_read 函數(shù)向內(nèi)核注冊(cè) socket 上的讀完成事件,并告訴內(nèi)核用戶讀緩沖區(qū)的位置,以及讀操作完成時(shí)如何通知應(yīng)用程序(這里以信號(hào)為例)。
2. 主線程繼續(xù)處理其他邏輯。
3. 當(dāng) socket 上的數(shù)據(jù)被讀入用戶緩沖區(qū)后,內(nèi)核將向應(yīng)用程序發(fā)送一個(gè)信號(hào),以通知應(yīng)用程序數(shù)據(jù)已經(jīng)可用。
4. 應(yīng)用程序預(yù)先定義好的信號(hào)處理函數(shù)選擇一個(gè)工作線程來(lái)處理客戶請(qǐng)求。工作線程處理完客戶請(qǐng)求后,調(diào)用 aio_write 函數(shù)向內(nèi)核注冊(cè) socket 上的寫完成事件,并告訴內(nèi)核用戶寫緩沖區(qū)的位置,以及寫操作完成時(shí)如何通知應(yīng)用程序。
5. 主線程繼續(xù)處理其他邏輯。
6. 當(dāng)用戶緩沖區(qū)的數(shù)據(jù)被寫入 socket 之后,內(nèi)核將向應(yīng)用程序發(fā)送一個(gè)信號(hào),以通知應(yīng)用程序數(shù)據(jù)已經(jīng)發(fā)送完畢。
7. 應(yīng)用程序預(yù)先定義好的信號(hào)處理函數(shù)選擇一個(gè)工作線程來(lái)做善后處理,比如決定是否關(guān)閉 socket。

模擬 Proactor 模式

使用同步 I/O 方式模擬出 Proactor 模式。原理是:主線程執(zhí)行數(shù)據(jù)讀寫操作,讀寫完成之后,主線程向工作線程通知這一”完成事件“。那么從工作線程的角度來(lái)看,它們就直接獲得了數(shù)據(jù)讀寫的結(jié)果,接下來(lái)要做的只是對(duì)讀寫的結(jié)果進(jìn)行邏輯處理。
使用同步 I/O 模型(以 epoll_wait為例)模擬出的 Proactor 模式的工作流程如下:
1. 主線程往 epoll 內(nèi)核事件表中注冊(cè) socket 上的讀就緒事件。
2. 主線程調(diào)用 epoll_wait 等待 socket 上有數(shù)據(jù)可讀。
3. 當(dāng) socket 上有數(shù)據(jù)可讀時(shí),epoll_wait 通知主線程。主線程從 socket 循環(huán)讀取數(shù)據(jù),直到?jīng)]有更多數(shù)據(jù)可讀,然后將讀取到的數(shù)據(jù)封裝成一個(gè)請(qǐng)求對(duì)象并插入請(qǐng)求隊(duì)列。
4. 睡眠在請(qǐng)求隊(duì)列上的某個(gè)工作線程被喚醒,它獲得請(qǐng)求對(duì)象并處理客戶請(qǐng)求,然后往 epoll 內(nèi)核事件表中注冊(cè) socket 上的寫就緒事件。
5. 主線程調(diào)用 epoll_wait 等待 socket 可寫。
6. 當(dāng) socket 可寫時(shí),epoll_wait 通知主線程。主線程往 socket 上寫入服務(wù)器處理客戶請(qǐng)求的結(jié)果。

http://aloenet.com.cn/news/47609.html

相關(guān)文章:

  • 海淀區(qū)玉泉小學(xué)網(wǎng)站 建設(shè)方百度搜索大數(shù)據(jù)查詢
  • 婚禮策劃網(wǎng)站模板中文網(wǎng)絡(luò)營(yíng)銷課程學(xué)什么
  • 中國(guó)建設(shè)教育網(wǎng)官方網(wǎng)站哈爾濱推廣優(yōu)化公司
  • 網(wǎng)站建設(shè)便宜的公司北京公司排名seo
  • 鄭州建設(shè)網(wǎng)站定制seo優(yōu)化網(wǎng)站推廣全域營(yíng)銷獲客公司
  • 免費(fèi)只做網(wǎng)站英文seo外鏈
  • 朔州做網(wǎng)站公司網(wǎng)絡(luò)營(yíng)銷策劃怎么寫
  • 服裝 網(wǎng)站模板 wordpress哪里可以免費(fèi)推廣廣告
  • 提高網(wǎng)站排名淘寶seo搜索優(yōu)化工具
  • 學(xué)vue可以做pc網(wǎng)站福州百度首頁(yè)優(yōu)化
  • 設(shè)計(jì)素材網(wǎng)站p谷歌廣告聯(lián)盟一個(gè)月能賺多少
  • 地方網(wǎng)站定位深圳sem競(jìng)價(jià)托管
  • h5做招聘網(wǎng)站簡(jiǎn)述網(wǎng)站推廣的方式
  • 大型服裝商城網(wǎng)站建設(shè)廣州seo優(yōu)化排名公司
  • 高端手機(jī)網(wǎng)站淘寶關(guān)鍵詞排名
  • 水利建設(shè)工程網(wǎng)站市場(chǎng)調(diào)研報(bào)告萬(wàn)能模板
  • 邢臺(tái)哪里提供網(wǎng)站制作網(wǎng)頁(yè)制作的軟件有哪些
  • 福建省建建設(shè)行業(yè)信用評(píng)分網(wǎng)站優(yōu)化網(wǎng)站的步驟
  • 施工企業(yè)準(zhǔn)則長(zhǎng)沙官網(wǎng)seo技巧
  • 哪里做網(wǎng)站一套一百灰色行業(yè)怎么推廣引流
  • 建設(shè)工程合同備案是在網(wǎng)站上嗎國(guó)外搜索引擎網(wǎng)站
  • 美食網(wǎng)站制作模板網(wǎng)站流量排名查詢工具
  • 網(wǎng)站建設(shè)的關(guān)鍵詞網(wǎng)頁(yè)設(shè)計(jì)培訓(xùn)教程
  • 傳動(dòng)設(shè)備 技術(shù)支持 東莞網(wǎng)站建設(shè)數(shù)據(jù)分析網(wǎng)頁(yè)
  • 公眾號(hào)電影網(wǎng)站怎么做搜索引擎優(yōu)化技術(shù)都有哪些
  • 一般做網(wǎng)站要多少錢怎樣優(yōu)化網(wǎng)站排名靠前
  • 濟(jì)南網(wǎng)站建設(shè)公司有哪些廣州seo優(yōu)化費(fèi)用
  • 裝修網(wǎng)平臺(tái)品牌seo培訓(xùn)
  • 上海網(wǎng)站建設(shè)方案2021年年度關(guān)鍵詞
  • 陜西中洋建設(shè)有限公司網(wǎng)站自己怎么做關(guān)鍵詞優(yōu)化