本發明專利技術公開了一種通信處理方法及裝置;方法包括:在網絡服務器側與各客戶端之間分別建立基于網絡套接字的連接,保持與每個客戶端之間所建立的連接;通過連接接收相應客戶端所發送的請求,每個請求中攜帶公共網關接口程序的統一資源定位符、以及請求主體;基于統一資源定位符、以及從連接中提取的信息而構造的請求頭部,構造請求對象;將請求對象以及構造的響應對象傳遞給公共網關接口程序,從響應對象中獲取公共網關接口程序的處理結果;基于使用處理結果而構造的響應主體構造針對請求的響應,通過連接向相應的客戶端返回響應。實施本發明專利技術,能夠提升客戶端向網絡服務器發起請求的效率、并節約網絡服務器與客戶端之間的通信帶寬。
【技術實現步驟摘要】
通信處理方法及裝置
本專利技術涉及網絡通信技術,尤其涉及一種通信處理方法及裝置。
技術介紹
網絡服務器根據超文本傳輸協議解析客戶端的請求,通過公共網關接口程序對請求進行響應,一個靜態頁面或圖片,進行頁面跳轉(redirect),或者把動態響應(dynamicresponse)的產生委托(delegate)給一些其它的程序,或者一些其它的服務器端技術以產生一個響應(response)來讓瀏覽器可以瀏覽。在上述過程中,客戶端與網絡服務器的進程建立短連接,通過短連接向網絡服務器的進程發送請求,接收網絡服務器返回的攜帶處理結果的響應。客戶端與網絡服務器的進程之間通過建立短連接的方式發送調用公共網關接口程序的請求,也就是說,客戶端在需要向網絡服務器的進程發送請求時才與網絡服務器的進程建立連接并發送請求,客戶端通過短連接在獲得網絡服務器的進程返回的針對請求的處理結果后,客戶端與網絡服務器之間即釋放連接,可見,連接僅用于客戶端與網絡服務器的進程之間的一次業務的數據傳輸。客戶端與網絡服務器的進程之間的這種業務處理方式存在以下問題:1)網絡服務器為了支持大量客戶端的業務,需要與客戶端之間頻繁建立短連接以供客戶端調用公共網關接口程序并釋放無用的短連接,處理效率低,造成了對網絡服務器資源的大量占用;2)客戶端向網絡服務器頻繁傳輸的請求,會占用客戶端與網絡服務器之間的大量通信帶寬。綜上所述,對于提升客戶端向網絡服務器發起請求的效率、并節約網絡服務器與客戶端之間的通信帶寬,相關技術尚無有效解決方案。
技術實現思路
本專利技術實施例提供一種通信處理方法及裝置,能夠提升客戶端向網絡服務器發起請求的效率、節約網絡服務器與客戶端之間的通信帶寬。本專利技術實施例的技術方案是這樣實現的:第一方面,本專利技術實施例提供一種通信處理方法,包括:在網絡服務器側與各客戶端之間分別建立基于網絡套接字的連接,保持與每個所述客戶端之間所建立的連接;通過所述連接接收相應客戶端所發送的請求,每個所述請求中攜帶公共網關接口程序的統一資源定位符、以及請求主體;基于所述統一資源定位符、以及從所述連接中提取的信息而構造的請求頭部,構造請求對象;將所述請求對象以及構造的響應對象傳遞給所述公共網關接口程序,從所述響應對象中獲取所述公共網關接口程序的處理結果;基于使用所述處理結果而構造的響應主體構造針對所述請求的響應,通過所述連接向相應的客戶端返回所述響應。第二方面,本專利技術實施例提供一種通信處理裝置,包括:連接單元,用于在網絡服務器側與各客戶端之間分別建立基于網絡套接字的連接,保持與每個所述客戶端之間所建立的連接;接收單元,用于通過所述連接接收相應客戶端所發送的請求,每個所述請求中攜帶公共網關接口程序的統一資源定位符、以及請求主體;構造單元,用于基于所述統一資源定位符、以及從所述連接中提取的信息而構造的請求頭部,構造請求對象;獲取單元,用于將所述請求對象以及構造的響應對象傳遞給所述公共網關接口程序,從所述響應對象中獲取所述公共網關接口程序的處理結果;響應單元,還用于基于使用所述處理結果而構造的響應主體構造針對所述請求的響應,通過所述連接向相應的客戶端返回所述響應。第三方面,本專利技術實施例提供一種通信處理裝置,包括:處理器和存儲器;存儲器中存儲有可執行指令,用于執行本專利技術實施例提供的通信處理方法。第四方面,本專利技術實施例提供一種存儲介質,存儲有可執行指令,用于執行本專利技術實施例提供的通信處理方法。本專利技術實施例具有以下有益效果:網絡服務器與客戶端之間建立保持的連接,對于客戶端來說可以復用與網絡服務器之間的連接向網絡服務器發送請求,避免了重復建立連接的情況,對于網絡服務器與客戶端而言,能夠提升訪問網絡服務器的效率;在網絡服務器側通過構造請求對象傳遞給公共網關接口程序,一方面保證了傳遞必要的信息給公共網關接口程序形成處理結果,另一方面,對于客戶端來說,發送請求時在請求中不需要再攜帶請求頭部,顯著節約網絡服務器與客戶端之間的帶寬;網絡服務器向客戶端發送的響應,響應主體中攜帶公共網關接口程序形成的處理結果,一方面,能夠向客戶端正常返回公共網關接口程序的處理結果,另一方面,由于沒有攜帶響應頭部,進一步顯著節約網絡服務器與客戶端之間的帶寬。附圖說明圖1是本專利技術實施例提供的通信處理裝置的一個可選的硬件結構示意圖;圖2是本專利技術實施例提供網絡服務器與客戶端基于短連接通信的一個可選的示意圖;圖3是本專利技術實施例提供的網絡服務器與客戶端基于短連接通信的一個可選的處理流程圖;圖4是本專利技術實施例提供的網絡服務器與客戶端建立連接的一個可選的示意圖;圖5是本專利技術實施例提供的客戶端與服務器通過長連接進行通信的一個可選的流程示意圖;圖6是本專利技術實施例提供的客戶端與服務器通過長連接進行通信的一個可選的流程示意圖;圖7-1是本專利技術實施例提供的應用于網上留言功能的客戶端與網絡服務器通信的示意圖;圖7-2是本專利技術實施例提供的應用于用戶網絡狀態查詢的客戶端與網絡服務器通信的示意圖;圖8是本專利技術實施例提供的通信處理裝置的一個可選的功能結構示意圖。具體實施方式以下結合附圖及實施例,對本專利技術進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本專利技術,并不用于限定本專利技術。對本專利技術進行進一步詳細說明之前,對本專利技術實施例中涉及的名詞和術語進行說明,本專利技術實施例中涉及的名詞和術語適用于如下的解釋。1)網絡套接字,是支持網絡套接字的客戶端(如瀏覽器客戶端、彩票競猜客戶端)與網絡服務器進行向通信連接的端點,網絡套接字至少需要3個參數來指定:通信的目的地址;端口;網絡協議。例如,就網絡服務器和客戶端之間的網絡套接字來說,是由網絡服務器網際協議(IP,InternetProtocol)地址、網絡服務器端口號、客戶端IP地址以及客戶端端口號的組合,其用于標識客戶端請求的服務器和服務;是網絡通信過程中端點的抽象表示。2)長連接:指在客戶端與網絡服務器之間基于網絡套接字建立的可以復用的傳輸數據的連接,在連接中沒有數據發送時,客戶端和網絡服務器可以持久保持連接(直至一方主動斷開,或者保持時間到達),以在具有傳輸數據的需求時復用連接傳輸數據,而不必立即釋放連接。3)短連接:客戶端與網絡服務器在具有通信需求時建立的基于網絡套接字的連接,當客戶端通過連接向網絡服務器發送請求并接收到響應后,則雙方釋放此連接,即每次連接只完成一項業務的數據傳輸。4)公共網關接口(CGI,CommonGatewayInterface),規定了網絡服務器調用公共網關接口程序的接口協議標準,網絡服務器通過調用CGI程序實現和客戶端(瀏覽器)的交互。網絡服務器接收客戶端發送給網絡服務器的信息,執行公共網關接口程序進行處理,將公共網關接口程序的處理結果再回送給客戶端。公共網關接口程序可以用任何程序設計語言編寫,如Shell腳本語言、Perl、Fortran、Pascal和C語言等。公共網關接口涉及的接口包括:5.1)標準輸入(Stdin),公共網關接口從標準輸入(Stdin)得到客戶端通過Post方法提交網絡服務器的數據,如表單(Form)中的數據。5.2)環境變量,網絡服務器的操作系統提供的變量,如環境變量QUERY-STRING,當客戶端發送的請求以Get方法向網絡服務器提交數據本文檔來自技高網...

【技術保護點】
一種通信處理方法,其特征在于,包括:在網絡服務器側與各客戶端之間分別建立基于網絡套接字的連接,保持與每個所述客戶端之間所建立的連接;通過所述連接接收相應客戶端所發送的請求,每個所述請求中攜帶公共網關接口程序的統一資源定位符、以及請求主體;基于所述統一資源定位符、以及從所述連接中提取的信息而構造的請求頭部,構造請求對象;將所述請求對象以及構造的響應對象傳遞給所述公共網關接口程序,從所述響應對象中獲取所述公共網關接口程序的處理結果;基于使用所述處理結果而構造的響應主體構造針對所述請求的響應,通過所述連接向相應的客戶端返回所述響應。
【技術特征摘要】
1.一種通信處理方法,其特征在于,包括:在網絡服務器側與各客戶端之間分別建立基于網絡套接字的連接,保持與每個所述客戶端之間所建立的連接;通過所述連接接收相應客戶端所發送的請求,每個所述請求中攜帶公共網關接口程序的統一資源定位符、以及請求主體;基于所述統一資源定位符、以及從所述連接中提取的信息而構造的請求頭部,構造請求對象;將所述請求對象以及構造的響應對象傳遞給所述公共網關接口程序,從所述響應對象中獲取所述公共網關接口程序的處理結果;基于使用所述處理結果而構造的響應主體構造針對所述請求的響應,通過所述連接向相應的客戶端返回所述響應。2.如權利要求1所述的方法,其特征在于,所述基于所述統一資源定位符、以及從所述連接中提取的信息而構造的請求頭部,構造請求對象,包括:從與所述客戶端建立的連接中提取用于構造所述請求頭部的元素,基于所提取的元素并結合所述統一資源定位符構造所述請求頭部,將所述請求頭部存儲在所述請求對象在所述網絡服務器的內存空間。3.如權利要求1所述的方法,其特征在于,所述將所述請求對象以及構造的響應對象傳遞給所述公共網關接口程序,包括:根據所述統一資源定位符啟動所述網絡服務器中的所述公共網關接口程序,將所述請求對象的指針,以及所述響應對象的指針作為入參,傳遞給啟動的所述公共網關接口程序。4.如權利要求1所述的方法,其特征在于,所述從所述響應對象中獲取所述公共網關接口程序的處理結果,包括:根據所述統一資源定位符啟動所述公共網關接口程序后,根據所述客戶端發送的請求所使用的方法,獲取所述客戶端所提交的數據,運行所述公共網關接口處理程序對所述數據進行處理形成處理結果。5.如權利要求4所述的方法,其特征在于,所述根據所述客戶端發送的請求所使用的方法,獲取所述客戶端所提交的數據,包括:當所述客戶端發送的請求中指示使用獲取方法時,從所述統一資源定位符的尾部提取所述客戶端提交的數據,并存儲在特定環境變量中供所述公共網關接口程序讀取。6.如權利要求4所述的方法,其特征在于,所述根據所述客戶端發送的所述請求所使用的方法,獲取所述客戶端所提交的請求數據,包括:當所述客戶端發送的請求中指示使用附加方法,從所述消息體中提取所述客戶端提交的數據,并存儲在對應所述公共網關接口程序的標準輸入接口供所述公共網關接口程序讀取。7.如權利要求1所述的方法,其特征在于,當所述客戶端發送的...
【專利技術屬性】
技術研發人員:顏喆明,黃若欣,
申請(專利權)人:騰訊科技深圳有限公司,
類型:發明
國別省市:廣東,44
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。