新四季網

一種網絡事件處理方法及裝置製造方法

2023-05-17 22:28:36 2

一種網絡事件處理方法及裝置製造方法
【專利摘要】本發明提供了一種網絡事件處理方法及裝置,當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,給請求連結的狀態的監聽套接字分配預設的調度配額,在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據傳輸請求時,創建與所述客戶端通信的連接套接字;創建與客戶端通過所述連接套接字通信的連接對象,將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端,在同一個裝置上實現網絡事件的觸發與處理,並且觸發過程結束時激活處理過程為一個連續的過程,加快網絡事件的處理速度,提高多核處理伺服器的事件處理速度。
【專利說明】一種網絡事件處理方法及裝置
【技術領域】
[0001]本發明涉及通信【技術領域】,特別是涉及一種網絡事件處理方法及裝置。
【背景技術】
[0002]隨著網際網路信息傳輸技術的發展,越來越多的伺服器採用多核處理器來解決網絡事件高並發的問題。伺服器對網絡事件的處理,目前常用的方法為用戶態輪詢處理方式,採用作業系統內核的事件處理層實現同步非阻塞輸入/輸出(non-blocking I/O)以及多路復用(multiplexing)。
[0003]用戶輪詢方式處理網絡事件主要分為兩個步驟:事件觸發步驟:伺服器中的網卡接收到客戶端發送的網絡服務請求數據,網卡將網絡服務請求數據通過與其連接的一個處理器發送到網絡協議棧的數據緩存區域進行緩存,網絡協議棧調用事件處理層標記所述數據緩存區域為存儲數據的狀態;事件處理步驟:用戶層通過一個處理器向網絡協議棧的緩存區域主動輪詢,當輪詢到緩存區域為存儲數據的狀態時,用戶層讀取數據緩存區域的數據。
[0004]以讀取數據為例,數據從客戶端發送到伺服器的網卡,網卡將接收到的數據通過一個處理器發送到網絡協議棧的數據緩存區域進行緩存,網絡協議棧調用事件處理層標記所述數據緩存區域為存儲數據的狀態;用戶層通過一個處理器向網絡協議棧的緩存區域主動輪詢,當輪詢到緩存區域為存儲數據的狀態時,用戶層讀取數據緩存區域的數據。若用戶層輪詢的結果是數據緩存區域沒有數據進行緩存,則繼續輪詢。
[0005]本領域技術人員採用上述方法處理網絡事件時,發現有如下缺點:
[0006]上述處理網絡事件的過程中,事件的觸發和事件的處理是兩個分離的過程,網卡將數據通過一個處理器將數據發送到緩存區域存儲;用戶層通過一個處理器輪詢緩存區域的存儲狀態,事件的觸發和事件的處理可能出於不同的處理器隊列,導致事件的觸發和事件的處理之間產生一定的時間間隔,導致事件處理進行延遲,降低多核處理伺服器的事件處理速度。

【發明內容】

[0007]有鑑於此,本發明提供了一種網絡事件處理方法及裝置,當接收到客戶端數據傳輸請求時,創建與客戶端通信的連接套接字,創建與客戶端通過所述連接套接字通信的連接對象,將客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象進行處理,事件的觸發與處理過程在同一個裝置上處理,且觸發過程結束時激活處理過程,加快了網絡事件處理速度。
[0008]一種網絡事件處理方法,所述方法包括:
[0009]當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求;
[0010]給請求連結的狀態的監聽套接字分配預設的調度配額,所述預設的調度配額為對其所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間;
[0011]在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字;
[0012]創建與客戶端通過所述連接套接字通信的連接對象;
[0013]將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0014]可選的,所述方法還包括:
[0015]在一個監聽套接字預設的調度配額內,當創建連接套接字失敗時,丟棄所述監聽
套接字。
[0016]可選的,所述方法還包括:
[0017]當超出一個監聽套接字預設的調度配額時,若仍能成功創建連接套接字,則重新為所述監聽套接字分配調度配額。
[0018]可選的,所述將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象包括:
[0019]識別所述連接套接字對應的連接對象;
[0020]調用所述連接套接字的回調函數;
[0021]利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象。
[0022]可選的,所述方法還包括:
[0023]當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
[0024]可選的,所述刪除所述連接套接字包括:
[0025]給所述連接套接字設置刪除預設時間;
[0026]當到達刪除預設時間時,刪除所述連接套接字。
[0027]一種網絡事件處理裝置,所述裝置包括:
[0028]判斷單元,用於當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求;
[0029]分配單元,用於給請求連結的狀態的監聽套接字分配預設的調度配額,所述預設的調度配額為對其所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間;
[0030]第一創建單元,用於在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字;
[0031]第二創建單元,用於創建與客戶端通過所述連接套接字通信的連接對象;
[0032]處理單元,用於將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述連接套接字返回到所述客戶端。
[0033]可選的,所述裝置還包括:
[0034]丟棄單元,用於在一個監聽套接字預設的調度配額內,當創建連接套接字失敗時,丟棄所述監聽套接字。[0035]可選的,所述裝置還包括:
[0036]重新分配單元,用於當超出一個監聽套接字預設的調度配額時,若仍能成功創建連接套接字,則重新為所述監聽套接字分配調度配額。
[0037]可選的,所述處理單元包括:
[0038]識別子單元,用於識別所述連接套接字對應的連接對象;
[0039]調用子單元,用於調用所述連接套接字的回調函數;
[0040]發送子單元,用於利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0041]可選的,所述裝置還包括:
[0042]刪除單元,用於當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
[0043]可選的,所述刪除單元包括:
[0044]設置子單元,用於給所述連接套接字設置刪除預設時間;
[0045]刪除子單元,用於當到達刪除預設時間時,刪除所述連接套接字。
[0046]有上述內容可知,本發明有如下有益效果:
[0047]本發明提供了一種網絡事件處理方法及裝置,當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,給請求連結的狀態的監聽套接字分配預設的調度配額,在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據傳輸請求時,創建與所述客戶端通信的連接套接字;創建與所述客戶端通過所述連接套接字通信的連接對象,將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。網絡事件的觸發過程為接收到客戶端的數據傳輸請求,事件的處理過程為創建與客戶端通信的連接套接字,創建與客戶端通過所述連接套接字通信的連接對象,將客戶端的數據通過所述連接套接字傳遞到所述連接對象進行處理,將處理結果數據通過所述的連接套接字返回到所述客戶端,事件的觸發過程與處理過程為一個連續的過程,並在同一個裝置上處理,提高了裝置的緩存命中率,加快網絡事件的處理速度,提高了多核處理伺服器的事件處理速度。
【專利附圖】

【附圖說明】
[0048]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0049]圖1為本發明一種網絡事件處理方法實施例一流程圖;
[0050]圖2為本發明一種網絡事件處理方法實施例二流程圖;
[0051]圖3為本發明一種網絡事件處理裝置實施例三結構示意圖;
[0052]圖4為本發明一種網絡事件處理裝置實施例四結構示意圖。
【具體實施方式】[0053]本發明提供了一種網絡事件處理方法及裝置,本發明提供了 一種網絡事件處理方法及裝置,當接收到客戶端數據傳輸請求時,創建與客戶端通信的連接套接字,創建與客戶端通過所述連接套接字通信的連接對象,將客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象進行處,事件的觸發處理過程為一個連續的過程,提高了多核處理伺服器的事件處理速度。
[0054]下面結合附圖對本發明具體實施例進行詳細說明。
[0055]實施例一
[0056]圖1為本發明一種網絡事件處理方法實施例一流程圖,所述方法包括:
[0057]步驟101:當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,如果是,執行步驟102,如果否,執行步驟106。
[0058]伺服器的每個埠對應一個監聽套接字,所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求。伺服器監聽套接字初始化時,設置伺服器內核系統監聽套接字的sk_data_ready回調函數。
[0059]至少一個客戶端通過一個埠將連結請求數據發送到伺服器的網卡,網卡將連結請求數據發送到內核系統的協議棧,協議棧將連結請求數據進行緩存,獲取與所述埠關聯的監聽套接字,並調用內核系統監聽套接字的sk_data_ready回調函數。
[0060]回調函數判斷接監聽套接字的狀態,當監聽套接字的狀態為請求連結的狀態,則將所述監聽套接字放入一個監聽隊列。監聽隊列是一個放置符合請求連結狀態的監聽套接字的隊列,採用先進先出的原則,先進入監聽隊列的監聽套接字先彈出;後進入監聽隊列的監聽套接字後彈出,也就是說,先處理先進入的監聽套接字,再處理後進入的監聽套接字。監聽隊列理論上可以排列的監聽套接字的個數不限制,在伺服器的存儲範圍內即可。
[0061]步驟102:給請求連結的狀態的監聽套接字分配預設的調度配額。
[0062]回調函數激活監聽隊列的監聽處理線程,排列在監聽隊列中的監聽套接字按照順序逐一彈出,監聽處理線程給彈出的監聽套接字設置預設的調度配額。所述預設的調度配額為對其所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間,也就是說,預設的調度配額為所述監聽套接字的操作時間。舉例說明,若預設的調度配額為10s,處理在IOs內監聽套接字所監聽到的所有客戶端的數據處理請求。
[0063]在預設的調度配額內,儘可能的處理所有當前處理的監聽套接字所監聽到的至少一個客戶端的數據處理請求。超出預設的調度配額或處理完當前處理的監聽套接字所監聽到的所有客戶端的數據處理請求後,彈出下一個監聽套接字,為下一個監聽套接字分配預設的調度配額。
[0064]步驟103:在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字。
[0065]監聽處理線程給一個監聽套接字分配預設的調度配額後,監聽套接字每監聽到一個客戶端的數據處理請求時,創建一個與所述客戶端通信的連接套接字。監聽套接字監聽與其關聯的埠所接收的至少一個客戶端發送的數據處理求。監聽套接字可以接收不同的客戶端發送的數據處理請求,監聽處理線程為每一個客戶端單獨創建一個與客戶端通信的連接套接字,一個連接套接字與一個客戶端進行通信。
[0066]將生成的連接套接字發送到工廠隊列,工廠隊列是放置與客戶端通信的連接套接字的隊列。
[0067]監聽處理線程主要給請求連結狀態的監聽套接字分配預設的調度配額,給當前處理的監聽套接字所監聽到的客戶端創建一個連接套接字,將連接套接字發送到工廠隊列進行後續處理,這樣可以保證監聽處理線程不被阻塞,有效的提高了並發連接請求的處理能力。
[0068]步驟104:創建與客戶端通過所述連接套接字通信的連接對象。
[0069]工廠處理線程根據工廠隊列中彈出的連接套接字在內核系統中創建一個連接對象,所述連接對象通過所述連接套接字與客戶端進行通信。連接套接字與連接對象一一對應,建立了客戶端和與連接對象之間數據傳輸通道。
[0070]步驟105:將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0071]事件處理線程識別工廠隊列彈出的連接套接字接收的客戶端數據的類型,根據所述數據的類型調用與所述數據類型相匹配的回調函數。
[0072]當接收到來自客戶端的數據時,調用sk_data_ready回調函數;
[0073]當網絡協議棧的緩衝區可寫時,調用sk_write_space回調函數;
[0074]當連接套接字的狀態改變時,調用sk_state_chuange回調函數。
[0075]調用了回調函數的連接套接字作為一個數據處理事件發送到事務隊列,事務隊列中放置的是待處理的具體數據處理事件,採用先進先出的原則,依次對客戶端發送的數據進行處理。
[0076]事件處理線程對事務隊列彈出的處理事件進行處理,即利用所述回調函數將所述客戶端發送的數據通過所述連接套接字與傳遞到所述連接對象。由於所述連接對象與客戶端通信,連接對象將對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0077]步驟106:丟棄所述監聽套接字。
[0078]當監聽套接字不是請求連結的狀態時,丟棄所述監聽套接字。
[0079]由上述內容可知,本發明有如下有益效果:
[0080]當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,給請求連結的狀態的監聽套接字分配預設的調度配額,在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據傳輸請求時,創建與所述客戶端通信的連接套接字;創建與所述客戶端通過所述連接套接字通信的連接對象,將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。網絡事件的觸發過程為接收到客戶端的數據傳輸請求,事件的處理過程為創建與客戶端通信的連接套接字,創建與客戶端通過所述連接套接字通信的連接對象,將客戶端的數據通過所述連接套接字傳遞到所述連接對象進行處理,將處理結果數據通過所述的連接套接字返回到所述客戶端,事件的觸發過程與處理過程為一個連續的過程,並在同一個裝置上處理,提高了裝置的緩存命中率,加快網絡事件的處理速度,提高了多核處理伺服器的事件處理速度。
[0081]實施例二[0082]圖2為本發明一種網絡事件處理方法實施例二流程圖,與實施例一相比,實施例二中還包括對連接套接字的刪除處理,所述方法包括:
[0083]步驟201:當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,如果是,執行步驟202 ;如果否,執行步驟210。
[0084]步驟202:給請求連結的狀態的監聽套接字分配預設的調度配額。
[0085]所述預設的調度配額為對所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間。
[0086]步驟201與步驟202與實施例一類似,參考實施例一的描述,這裡不再贅述。
[0087]步驟203:判斷是否在一個監聽套接字預設的調度配額內,如果是,執行步驟204,如果否,執行步驟208。
[0088]在監聽套接字預設的調度配額內時,儘可能的處理監聽套接字所監聽到的所有客戶端發送的數據處理請求。
[0089]步驟204:每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字,連接套接字是否創建成功,如果是,執行步驟205;如果否,執行步驟210。
[0090]在監聽套接字的預設的調度配額內,每接收到一個客戶端的數據處理請求,即創建一個與所述客戶端通信的連接套接字。此處與實施例一類似,參考實施例一的描述,這裡不再贅述。
[0091]連接套接字創建成功,則創建與客戶端通過所述連接套接字通信的連接對象;連接套接字創建不成功,表示監聽套接字所監聽到的所有客戶端的數據處理請求處理完畢,丟棄所述連接套接字。
[0092]步驟205:若連接套接字創建成功,創建與客戶端通過所述連接套接字通信的連接對象。
[0093]步驟206:將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0094]步驟205和步驟206與實施例一類似,參考實施例一的描述,這裡不再贅述。
[0095]步驟207:當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
[0096]當數據傳輸完畢或者傳輸異常時,事件處理線程給所述連接套接字添加刪除標識,並將添加了刪除標識的連接套接字發送到工廠隊列,工廠隊列刪除添加了刪除標識的連接套接字。
[0097]可選的,事件處理線程給添加了刪除標識的連接套接字設置刪除預設時間,當到達刪除預設時間時,刪除所述連接套接字。
[0098]工廠處理線程執行創建與客戶端通過所述連接套接字通信的連接對象以及刪除添加了刪除標識的連接套接字兩個處理任務,其中,創建連接對象採用儘可能的調度策略,只要工廠隊列中還有連接套接字,就與客戶端通過所述連接套接字通信的連接對象;刪除添加了刪除標識的連接套接字採用延遲處理策略,給每個添加了刪除標識的連接套接字設置一個刪除預設時間,當到達刪除預設時間時,再對添加了刪除標識的連接套接字進行刪除。這樣,工廠處理線程可以先儘快的處理待處理的連接套接字,再延遲處理刪除空閒的連接套接字,釋放事件處理空間,最大限度了提高了並發事件的處理能力。[0099]步驟208:連接套接字是否創建成功,如果是,執行步驟209 ;如果否,執行步驟210。
[0100]步驟209:若連接套接字創建成功,重新為所述監聽套接字分配調度配額。
[0101]當超過預設的調度配額時,監聽套接字所監聽的所有客戶端的數據處理請求還沒有操作完畢,也就是說,當超過預設的調度配額時,此監聽套接字還監聽到客戶端的數據處理請求,則將此監聽套接字重新放入監聽隊列,重新為此監聽套接字分配預設的調度配額。
[0102]舉例說明:若監聽隊列中依次有tcp監聽套接字、unix監聽套接字以及Iinux監聽套接字,處理tcp監聽套接字監聽到的客戶端的數據處理請求,當超過tcp監聽套接字的預設的調度配額時,tcp監聽套接字還監聽到客戶端的數據處理請求,則將tcp監聽套接字重新放入監聽隊列,排列在Iinux監聽套接字之後,當處理完unix監聽套接字和Iinux監聽套接字後,再給tcp監聽套接字分配預設的調度配額,繼續處理tcp監聽套接字監聽到的客戶端的數據處理請求。
[0103]步驟210:若連接套接字創建失敗,丟棄所述連接套接字。
[0104]由上述內容可知,本發明還有如下有益效果:
[0105]監聽處理線程將連接套接字發送到工廠隊列,工廠處理線程創建與客戶端通過所彈出的連接套接字通信的連接對象,監聽處理線程只負責處理監聽客戶端的數據處理請求事件;事件處理線程調用回調函數將客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,給數據處理完畢或數據處理異常的連接套接字添加刪除標識發送到工廠隊列,事件處理線程只負責客戶端的數據的處理;工廠隊列負責生成連接對象,並刪除添加了刪除標識的連接套接字,釋放事件處理空間,輔助監聽處理線程和事件處理線程,保證監聽處理線程不阻塞,最大限度提高了並發連結請求的處理能力;刪除空閒的連接套接字,釋放數據處理空間,最大限度提高了並發事務的處理能力。
[0106]實施例三
[0107]圖3為本發明一種網絡事件處理裝置實施例三結構示意圖,實施例三是與實施例一所述的方法所對應的裝置,所述裝置包括:
[0108]判斷單元301,用於當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態。
[0109]所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的請求。
[0110]分配單元302,用於給請求連結的狀態的監聽套接字分配預設的調度配額。
[0111]所述預設的調度配額為對所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間。
[0112]第一創建單元303,用於在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字。
[0113]第二創建單元304,用於創建與客戶端通過所述連接套接字通信的連接對象。
[0114]處理單元305,用於將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述連接套接字返回到所述客戶端。
[0115]可選的,所述處理單元305包括:
[0116]識別子單元306,用於識別所述連接套接字對應的連接對象;[0117]調用子單元307,用於調用所述連接套接字的回調函數;
[0118]發送子單元308,用於利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0119]實施例四
[0120]圖4為本發明一種網絡事件處理裝置實施例四結構示意圖,實施例四是與實施例二所述的方法所對應的裝置,所述裝置包括:
[0121]判斷單元301,用於當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態。
[0122]所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求。
[0123]分配單元302,用於給請求連結的狀態的監聽套接字分配預設的調度配額。
[0124]所述預設的調度配額為對所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間。
[0125]第一創建單元303,用於在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據傳輸請求時,創建與所述客戶端通信的連接套接字。
[0126]第二創建單元304,用於創建與客戶端通過所述連接套接字通信的連接對象。
[0127]處理單元305,用於將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述連接套接字返回到所述客戶端。
[0128]可選的,所述處理單元305包括:
[0129]識別子單元306,用於識別所述連接套接字對應的連接對象;
[0130]調用子單元307,用於調用所述連接套接字的回調函數;
[0131]發送子單元308,用於利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
[0132]丟棄單元401,用於在一個監聽套接字預設的調度配額內,當創建連接套接字失敗時,丟棄所述監聽套接字。
[0133]重新分配單元402,用於當超出一個監聽套接字預設的調度配額時,若仍能成功創建連接套接字,重新為所述監聽套接字分配調度配額。
[0134]刪除單元403,用於當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
[0135]可選的,所述刪除單元403包括:
[0136]設置子單元404,用於給所述連接套接字設置刪除預設時間;
[0137]刪除子單元405,用於當到達刪除預設時間時,刪除所述連接套接字。
[0138]以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種網絡事件處理方法,其特徵在於,所述方法包括: 當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求; 給請求連結的狀態的監聽套接字分配預設的調度配額,所述預設的調度配額為對其所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間; 在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字; 創建與客戶端通過所述連接套接字通信的連接對象; 將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
2.根據權利要求1所述的方法,其特徵在於,所述方法還包括: 在一個監聽套接字預設的調度配額內,當創建連接套接字失敗時,丟棄所述監聽套接字。
3.根據權利要求1所述的方法,其特徵在於,所述方法還包括: 當超出一個監聽套接字預設的調度配額時,若仍能成功創建連接套接字,則重新為所述監聽套接字分配調度配額。`
4.根據權利要求1所述的方法,其特徵在於,所述將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象包括: 識別所述連接套接字對應的連接對象; 調用所述連接套接字的回調函數; 利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象。
5.根據權利要求1-4任意一項所述的方法,其特徵在於,所述方法還包括: 當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
6.根據權利要求5所述的方法,其特徵在於,所述刪除所述連接套接字包括: 給所述連接套接字設置刪除預設時間; 當到達刪除預設時間時,刪除所述連接套接字。
7.—種網絡事件處理裝置,其特徵在於,所述裝置包括: 判斷單元,用於當受到協議棧的調用時,判斷監聽套接字是否為請求連結的狀態,所述監聽套接字用於監聽與其關聯的埠所接收的至少一個客戶端的連結請求; 分配單元,用於給請求連結的狀態的監聽套接字分配預設的調度配額,所述預設的調度配額為對其所屬的監聽套接字所監聽的至少一個客戶端的數據處理請求的操作時間;第一創建單元,用於在一個監聽套接字預設的調度配額內,每接收到一個客戶端的數據處理請求時,創建與所述客戶端通信的連接套接字; 第二創建單元,用於創建與客戶端通過所述連接套接字通信的連接對象; 處理單元,用於將所述客戶端發送的數據通過所述連接套接字傳遞到所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述連接套接字返回到所述客戶端。
8.根據權利要求7所述的裝置,其特徵在於,所述裝置還包括: 丟棄單元,用於在一個監聽套接字預設的調度配額內,當創建連接套接字失敗時,丟棄所述監聽套接字。
9.根據權利要求7所述的裝置,其特徵在於,所述裝置還包括: 重新分配單元,用於當超出一個監聽套接字預設的調度配額時,若仍能成功創建連接套接字,則重新為所述監聽套接字分配調度配額。
10.根據權利要求7所述的裝置,其特徵在於,所述處理單元包括: 識別子單元,用於識別所述連接套接字對應的連接對象; 調用子單元,用於調用所述連接套接字的回調函數; 發送子單元,用於利用所述回調函數將所述客戶端發送的數據通過所述連接套接字傳遞到與所述連接對象,以便所述連接對象對所述數據進行處理後,將得到的處理結果數據通過所述的連接套接字返回到所述客戶端。
11.根據權利要求7-10所述的裝置,其特徵在於,所述裝置還包括: 刪除單元,用於當所述數據處理完畢或數據處理異常時,刪除所述連接套接字。
12.根據權利要求11所述的裝置,其特徵在於,所述刪除單元包括: 設置子單元,用於給所述連接套接字設置刪除預設時間; 刪除子單元,用於當到達刪除預設時間時,刪除所述連接套接字。
【文檔編號】H04L12/24GK103501245SQ201310446725
【公開日】2014年1月8日 申請日期:2013年9月26日 優先權日:2013年9月26日
【發明者】李建國 申請人:北京搜狐網際網路信息服務有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀