[發明專利]一種使用內存池提升通信服務器性能的方法無效
| 申請號: | 201310490032.X | 申請日: | 2013-10-18 |
| 公開(公告)號: | CN103530239A | 公開(公告)日: | 2014-01-22 |
| 發明(設計)人: | 張方玉 | 申請(專利權)人: | 深圳市新格林耐特通信技術有限公司 |
| 主分類號: | G06F12/06 | 分類號: | G06F12/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 使用 內存 提升 通信 服務器 性能 方法 | ||
技術領域
本發明涉及計算機通信網絡技術和服務器技術領域,尤其涉及一種使用內存池提升通信服務器性能的方法。
背景技術
通信服務器,是指在計算機通信網絡中的一個管理資源對外提供業務服務的高性能計算機。它們偵聽計算機通信網絡中來自客戶端的業務請求,并對業務請求進行響應和處理,而為不同業務服務,豐富了網絡應用。在操作系統下動態內存管理很耗時,對效率影響特別大,然而在實際的應用過程中,卻不可避免地經常要用到堆中的內存。但通過malloc函數或new函數等進行的內存分配存在先天缺陷:?(1)利用默認的內存管理函數在堆上分配和釋放內存需要花費很多時間;(2)隨著時間的推移,堆上會形成許多內存碎片,在應用程序進行內存申請操作將受到更大的影響,導致應用程序的運行越來越慢。
當應用程序需要對固定大小的對象經常性地申請內存時,常會采用內存池(Memory?Pool)技術來提高內存管理效率。經典的內存池做法是一次性分配大量大小相同的小塊內存,通過該技術可以極大地加快內存分配/釋放過程。內存池技術通過批量申請內存,降低了內存申請次數,從而使操作節省了時間。在減少了內存碎片產生的同時,對性能的提升有顯著的幫助。
發明內容
本發明的主要目的在于提供一種使用內存池提升通信服務器性能的方法,從而改善通信服務器性能,提升用戶的業務體驗或對業務服務產品的忠誠度。
為實現上述目的,本發明提出一種使用內存池提升通信服務器性能的方法,通信服務器預先創建有限數量的空閑的待用內存塊;在通信服務器運行過程中,將根據接收到的業務請求,通過內存池管理方法,并分配空閑的待用內存塊給此業務請求使用并置狀態為正在使用;在此業務請求處理執行完成之后,重新置狀態為空閑,供通信服務器后續使用;所述內存池管理方法包括以下步驟:
A、通信服務器從配置文件獲取并發數并初始化線程池;
B、判斷當前時刻是否有業務請求;如果是,則執行步驟C;如果不是則執行步驟F;
C、判斷當前時刻內存池中是否存在尚處于空閑狀態的內存塊;如果是,則執行步驟D;如果不是則執行步驟E;
D、內存池管理方法分配一個空閑內存塊給業務請求線程使用;待業務請求處理完成之后;內存池管理方法回收供此業務請求使用的內存塊;然后執行步驟F;
E、記載內存池管理方法分配不到內存塊的;并發送業務請求處理錯誤;
F、經延時Δt?后,返回步驟B。
G、通信服務器退出,內存池管理方法釋放內存。
通過內存池管理方法可以提高通信服務器性能,從而提高客戶端業務訪問速度。
步驟D所述內存池管理方法分配包括以下步驟:
1)?、遍歷內存池;如果存在空閑內存塊,則執行步驟2);如果不存在空閑內存塊,則執行步驟3);
2)?、將遍歷內存池中空閑內存塊的狀態置為使用;空閑計數器做減一操作;使用計數器做加一操作;并返回此內存塊的首地址。
3)?、返回空指針;
步驟D所述內存池管理方法回收包括以下步驟:
1)將使用內存塊的狀態置空閑;
2)空閑計數器做加一操作;使用計數器做減一操作。
本發明的進一步改進是:步驟D使用內存池管理方法去分配和收回內存塊,所述內存池管理方法分配包括如下步驟:
1)?、遍歷內存池;如果存在空閑內存塊,則執行步驟
2)?、如果不存在空閑內存塊,則執行步驟3);
3)?、將遍歷內存池中空閑內存塊的狀態置為使用;空閑計數器做減一操作;使用計數器做加一操作;并返回此內存塊的首地址。
所述通信服務器預先創建有限數量的空閑的待用內存空間具體為,在通信服務器啟動運行時,根據配置文件獲取并發數,創建并發數個固定大小的空閑的待用內存塊。
通過配置文件獲取并發數,通過并發數來指定內存池的大小。
所述步驟F中延時Δt的取值范圍為10—100ms。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市新格林耐特通信技術有限公司,未經深圳市新格林耐特通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310490032.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:海上平臺柴油發電機組
- 下一篇:一種汽車散熱器總成





