[發(fā)明專利]基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的方法及裝置在審
| 申請?zhí)枺?/td> | 201210387819.9 | 申請日: | 2012-10-12 |
| 公開(公告)號: | CN102916953A | 公開(公告)日: | 2013-02-06 |
| 發(fā)明(設(shè)計(jì))人: | 馬宇堅(jiān);湯立輝 | 申請(專利權(quán))人: | 青島海信傳媒網(wǎng)絡(luò)技術(shù)有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 北京市京大律師事務(wù)所 11321 | 代理人: | 黃啟行;方曉明 |
| 地址: | 266061 山東省青*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 tcp 連接 實(shí)現(xiàn) 并發(fā) 服務(wù) 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)通信技術(shù),尤其涉及一種基于傳輸控制協(xié)議(TCP,Transmission?Control?Protocol)連接實(shí)現(xiàn)并發(fā)服務(wù)的方法及裝置。
背景技術(shù)
高性能計(jì)算技術(shù)是計(jì)算機(jī)技術(shù)的一個(gè)重要分支,具有高計(jì)算能力的計(jì)算機(jī)系統(tǒng),可以實(shí)現(xiàn)更大的計(jì)算量、單位時(shí)間內(nèi)能夠處理更多的數(shù)據(jù),從而為用戶提供更好的服務(wù)。
現(xiàn)有的各TCP/IP服務(wù)器中,對于多用戶的并發(fā)接入,一般采用多進(jìn)程的方式,即對于每一個(gè)接入的用戶請求,配置一個(gè)進(jìn)程用于單獨(dú)處理該請求。
圖1為現(xiàn)有基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的方法流程示意圖。參見圖1,該流程包括:
步驟101,服務(wù)器監(jiān)聽服務(wù)端口;
本步驟中,服務(wù)器配置用于接收客戶端發(fā)起TCP連接的服務(wù)端口,通過監(jiān)聽該配置的服務(wù)端口,可以監(jiān)聽客戶端發(fā)起的TCP連接。
步驟102,客戶端向服務(wù)器監(jiān)聽的服務(wù)端口發(fā)起TCP連接;
本步驟中,服務(wù)器在配置服務(wù)端口后,將配置的服務(wù)端口信息通知各客戶端,客戶端在需要與服務(wù)器建立TCP連接時(shí),通過該服務(wù)端口,向服務(wù)器發(fā)送TCP連接請求。
步驟103,服務(wù)器分配進(jìn)程接收客戶端的TCP連接請求,建立TCP連接,并且生成該TCP連接的socket?fd;
本步驟中,在Unix/Linux系統(tǒng)下,一個(gè)套接字(socket)句柄,相當(dāng)于一個(gè)文件,在socket上收發(fā)數(shù)據(jù),相當(dāng)于對一個(gè)文件進(jìn)行讀寫,因而,一個(gè)socket句柄,通常也用表示文件句柄的文件描述(fd,file?descriptor)來表示。每一客戶端對應(yīng)一個(gè)進(jìn)程。
步驟104,服務(wù)器fork進(jìn)程,讀取并處理生成的socket?fd中的數(shù)據(jù);
本步驟中,服務(wù)器通過進(jìn)程對socket?fd中的數(shù)據(jù)進(jìn)行處理。
步驟105,服務(wù)器的進(jìn)程檢測到客戶端斷開TCP連接,關(guān)閉該socket?fd,銷毀進(jìn)程。
由上述可見,現(xiàn)有基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的方法,服務(wù)器采用單進(jìn)程方式接收客戶端的TCP連接請求,生成TCP連接的socket?fd,然后通過fork進(jìn)程的方式來讀取并且處理socket?fd中的數(shù)據(jù)。這樣,每一進(jìn)程處理服務(wù)器依據(jù)每一客戶端生成的socket?fd中的數(shù)據(jù),不利于數(shù)據(jù)的共享,同時(shí),也增加了服務(wù)器的進(jìn)程調(diào)度,且需要服務(wù)器為每一請求TCP連接的客戶端創(chuàng)建和銷毀進(jìn)程,可接入的客戶端數(shù)較少,導(dǎo)致服務(wù)器資源的壓力較大,使得處理客戶端的TCP連接請求延遲,極大地降低了對客戶端請求響應(yīng)的實(shí)時(shí)性。具體來說,存在如下技術(shù)問題:
第一,服務(wù)器通過單進(jìn)程接收客戶端的TCP連接請求并且獲得TCP連接的socket?fd,一個(gè)進(jìn)程進(jìn)行讀取并且處理建立連接后為一個(gè)客戶端生成的socket?fd數(shù)據(jù),客戶端和服務(wù)器進(jìn)程是一一對應(yīng)的關(guān)系,導(dǎo)致大量并發(fā)的客戶端需要大量的進(jìn)程進(jìn)行分別處理,造成了服務(wù)器進(jìn)程資源的壓力;
第二,由于采用的是單進(jìn)程接收客戶端的TCP連接并且獲得TCP連接的socket?fd,因此,為各客戶端的socket?fd數(shù)據(jù)進(jìn)行共享帶來了不方便;
第三,由于一個(gè)進(jìn)程只能處理一個(gè)客戶端的socket?fd數(shù)據(jù),等處理完socket?fd數(shù)據(jù)又需要銷毀進(jìn)程,將導(dǎo)致頻繁地創(chuàng)建和銷毀進(jìn)程,從而對服務(wù)器造成了較大的開銷;
第四,在并發(fā)客戶端較多時(shí),由于產(chǎn)生大量的進(jìn)程,將使得系統(tǒng)的進(jìn)程調(diào)度變得十分頻繁,造成處理客戶端請求連接的延遲,極大地降低了服務(wù)器對客戶端連接請求響應(yīng)的實(shí)時(shí)性。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的方法,提升可接入服務(wù)器的客戶端數(shù)、減少資源開銷。
本發(fā)明的實(shí)施例還提供一種基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的裝置,提升可接入服務(wù)器的客戶端數(shù)、減少資源開銷。
為達(dá)到上述目的,本發(fā)明實(shí)施例提供的一種基于TCP連接實(shí)現(xiàn)并發(fā)服務(wù)的方法,包括:
預(yù)先在服務(wù)器中為進(jìn)程組中的每一進(jìn)程配置接收連接線程、檢測線程以及處理線程組;
監(jiān)聽到客戶端通過服務(wù)端口發(fā)起TCP連接請求,選取進(jìn)程組中用于處理TCP連接請求的進(jìn)程;
觸發(fā)選取的進(jìn)程中的接收連接線程接收客戶端的TCP連接請求,建立TCP連接,并生成該TCP連接的套接字文件描述;
觸發(fā)所述選取的進(jìn)程中的檢測線程讀取生成的套接字文件描述中的數(shù)據(jù);
選取處理線程組中的處理線程,對檢測線程讀取的數(shù)據(jù)進(jìn)行處理;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于青島海信傳媒網(wǎng)絡(luò)技術(shù)有限公司,未經(jīng)青島海信傳媒網(wǎng)絡(luò)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210387819.9/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 具有傳輸控制協(xié)議匯聚模塊的傳輸控制協(xié)議主機(jī)
- 一種分發(fā)傳輸TCP數(shù)據(jù)包的方法及裝置
- 一種TCP報(bào)文的發(fā)送方法、接收方法及裝置
- 一種無縫重建TCP連接的系統(tǒng)及方法
- 一種機(jī)載網(wǎng)絡(luò)服務(wù)的TCP連接處理方法
- 一種實(shí)現(xiàn)傳輸控制協(xié)議TCP傳輸?shù)姆椒把b置
- 移動終端跨區(qū)保持MEC邊緣TCP業(yè)務(wù)服務(wù)方法及系統(tǒng)
- 一種TCP熱備份的方法和裝置
- TCP報(bào)文的負(fù)載均衡方法及裝置
- 加密TCP流量采集方法與裝置
- 互動業(yè)務(wù)終端、實(shí)現(xiàn)系統(tǒng)及實(shí)現(xiàn)方法
- 街景地圖的實(shí)現(xiàn)方法和實(shí)現(xiàn)系統(tǒng)
- 游戲?qū)崿F(xiàn)系統(tǒng)和游戲?qū)崿F(xiàn)方法
- 圖像實(shí)現(xiàn)裝置及其圖像實(shí)現(xiàn)方法
- 增強(qiáng)現(xiàn)實(shí)的實(shí)現(xiàn)方法以及實(shí)現(xiàn)裝置
- 軟件架構(gòu)的實(shí)現(xiàn)方法和實(shí)現(xiàn)平臺
- 數(shù)值預(yù)報(bào)的實(shí)現(xiàn)方法及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其冬眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 空調(diào)及其睡眠控制模式實(shí)現(xiàn)方法和實(shí)現(xiàn)裝置以及實(shí)現(xiàn)系統(tǒng)
- 輸入設(shè)備實(shí)現(xiàn)方法及其實(shí)現(xiàn)裝置





