[發明專利]服務器及其數據處理方法無效
| 申請號: | 201110336731.X | 申請日: | 2011-10-31 |
| 公開(公告)號: | CN102340545A | 公開(公告)日: | 2012-02-01 |
| 發明(設計)人: | 伍杰 | 申請(專利權)人: | 深圳市五巨科技有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L12/56 |
| 代理公司: | 北京凱特來知識產權代理有限公司 11260 | 代理人: | 鄭立明;趙鎮勇 |
| 地址: | 518040 廣東省深圳市福田*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 服務器 及其 數據處理 方法 | ||
技術領域
本發明屬于網絡通信數據處理領域,尤其涉及一種服務器及其數據處理方法。
背景技術
在現有技術中,客戶端瀏覽器與服務器之間的HTTP(Hyper?Text?Transfer?Protocol,超文本傳輸協議)連接是無狀態的。也就是說,瀏覽器和服務器每進行一次HTTP操作,就建立一次連接,但操作結束就中斷連接。如果客戶端瀏覽器訪問的某個HTML(Hyper?Text?Markup?Language,是為網頁創建設計的一種標記語言)網頁或其他類型的網頁中包含有其他的網絡資源,如JavaScript(客戶端網頁開發的一種腳本語言)文件、圖像文件、CSS(一種用來為結構化文檔的計算機語言)文件等,當瀏覽器每遇到這樣一個網絡資源,就會和服務器之間建立一個HTTP連接,這樣的處理方法是非常浪費時間的。
基于上述問題,現有技術中提供了一種長連接處理方式。所謂長連接,是指在一個HTTP連接上可以連續發送多個數據包,發送完畢后再斷開連接。在連接保持期間,如果沒有數據包發送,則瀏覽器與服務器雙方需要發送鏈路檢測包。
發明內容
本發明提供了一種服務器及其數據處理方法,旨在解決現有的服務器數據處理過程系統處理速度慢,線程及代碼之間的依賴關系高,難以進行擴展的問題。
本發明是這樣實現的,一種服務器數據處理方法,包括:
步驟a:接收客戶端發送的連接請求;
步驟b:將所述連接請求的連接標識和發送的字節數據形成二元組請求數據包,保存到二元組請求數據包隊列;
步驟c:將所述二元組請求數據包解析為java數據對象,保存到合法請求java對象隊列;
步驟d:根據所述java數據對象的請求類型尋找對應類型的空閑線程進行處理,將處理結果和所述連接標識組成處理結果java對象,保存到處理結果java對象隊列;
步驟e:根據所述連接標識在請求連接隊列中找到所述連接請求,發送所述處理結果至所述客戶端。
在本發明的技術方案中,所述步驟a進一步包括:為所述連接請求分配唯一的連接標識。
在本發明的技術方案中,所述步驟c進一步包括:讀取所述二元組請求數據包隊列,對隊列的每個請求包執行過濾器鏈處理,處理結果正常則繼續解析所述二元組請求數據包,否則生成異常處理信息,并將所述異常處理信息和所述連接標識組成處理結果java對象,保存到所述處理結果java對象隊列。
在本發明的技術方案中,所述步驟d具體包括:讀取所述合法請求java對象隊列,根據所述java數據對象的請求類型到處理者線程池中尋找對應類型的空閑線程,將所述空閑線程的狀態改變為忙碌,交給所述空閑線程處理所述類型的業務邏輯,在處理完畢后將所述忙碌線程的狀態改變為空閑。
在本發明的技術方案中,所述方法進一步包括:讀取所述請求連接隊列,發送心跳偵測請求判斷所述連接請求是否存活,并在所述連接請求不存活后釋放所述連接請求的所有系統資源,將所述連接請求移出所述請求連接隊列。
本發明的另一技術方案為:一種服務器,包括請求接收模塊、二元組請求數據包形成模塊、java數據對象解析模塊、處理結果java對象形成模塊以及請求處理結果發送模塊,所述請求接收模塊用于接收客戶端發送的連接請求,所述二元組請求數據包形成模塊用于將所述連接請求的連接標識和發送的字節數據形成二元組請求數據包,保存到二元組請求數據包隊列,所述java數據對象解析模塊用于將所述二元組請求數據包解析為java數據對象,保存到合法請求java對象隊列,所述處理結果java對象形成模塊用于根據所述java數據對象的請求類型尋找對應類型的空閑線程進行處理,將處理結果和所述連接標識組成處理結果java對象,保存到處理結果java對象隊列,所述請求處理結果發送模塊用于根據所述連接標識在請求連接隊列中找到所述連接請求,發送所述處理結果至所述客戶端。
在本發明的技術方案中,所述服務器進一步包括連接標識分配模塊,所述連接標識分配模塊用于為所述連接請求分配唯一的連接標識。
在本發明的技術方案中,所述服務器進一步包括過濾器鏈處理模塊及異常處理信息生成模塊,所述過濾器鏈處理模塊用于讀取所述二元組請求數據包隊列,對隊列的每個請求包執行過濾器鏈處理,處理結果正常則繼續解析所述二元組請求數據包,否則通過所述異常處理信息生成模塊生成異常處理信息,并將所述異常處理信息和所述連接標識組成處理結果java對象,保存到所述處理結果java對象隊列。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市五巨科技有限公司,未經深圳市五巨科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110336731.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:報文轉發方法及裝置
- 下一篇:一種LED光源散熱方法及一種LED光源





