欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種數(shù)據(jù)庫的連接管理方法及裝置的制作方法

文檔序號:6426383閱讀:163來源:國知局
專利名稱:一種數(shù)據(jù)庫的連接管理方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于數(shù)據(jù)庫訪問技術(shù),尤其涉及一種數(shù)據(jù)庫的連接管理方法及裝置。
背景技術(shù)
如今,大量應(yīng)用需要訪問數(shù)據(jù)庫以獲得所需要的數(shù)據(jù)。然而,一般的分布式數(shù)據(jù)庫服務(wù)器存在以下缺點(1)每個數(shù)據(jù)庫提供的服務(wù)是一樣的,沒有根據(jù)數(shù)據(jù)庫壓力和業(yè)務(wù)邏輯需要提供多樣性服務(wù);( 數(shù)據(jù)庫調(diào)度模塊僅僅根據(jù)數(shù)據(jù)庫服務(wù)的壓力狀況分配服務(wù),沒有考慮到數(shù)據(jù)庫操作的優(yōu)先級。

發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)據(jù)庫的連接管理方法及裝置以解決上述問題。本發(fā)明提供一種數(shù)據(jù)庫的連接管理方法,包括以下步驟。數(shù)據(jù)庫調(diào)度進(jìn)程從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,并根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程從數(shù)據(jù)庫調(diào)度進(jìn)程接收數(shù)據(jù)庫操作請求。數(shù)據(jù)庫執(zhí)行進(jìn)程判斷數(shù)據(jù)庫操作請求的類型,并調(diào)用與數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求。于連接執(zhí)行數(shù)據(jù)庫操作請求后,數(shù)據(jù)庫執(zhí)行進(jìn)程將處于打開狀態(tài)的連接放回至數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。本發(fā)明還提供一種數(shù)據(jù)庫的連接管理裝置,包括調(diào)度模塊、接收模塊、判斷模塊以及連接管理模塊。調(diào)度模塊用于從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求。接收模塊與調(diào)度模塊相連,調(diào)度模塊根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的接收模塊。判斷模塊與接收模塊相連,并用于判斷數(shù)據(jù)庫操作請求的類型。連接管理模塊與判斷模塊相連,并用于調(diào)用與數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求。于連接執(zhí)行數(shù)據(jù)庫操作請求后,連接管理模塊用于將處于打開狀態(tài)的連接放回至數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。相較于先前技術(shù),根據(jù)本發(fā)明提供的數(shù)據(jù)庫的連接管理方法及裝置,連接根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求,從而提高數(shù)據(jù)庫執(zhí)行效率。另外,數(shù)據(jù)庫調(diào)度進(jìn)程根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。如此,有利于負(fù)荷平衡,從而提高數(shù)據(jù)庫整體執(zhí)行效率。此外,通過數(shù)據(jù)庫連接堆棧實現(xiàn)數(shù)據(jù)庫連接的循環(huán)使用,同時防止建立過多數(shù)據(jù)庫連接占用系統(tǒng)內(nèi)存。而且,于連接執(zhí)行數(shù)據(jù)庫操作請求后,處于打開狀態(tài)的連接將被放回至數(shù)據(jù)庫連接堆棧。如此,可循環(huán)使用已經(jīng)打開的連接,從而提高連接的使用效率。


此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中圖1所示為根據(jù)本發(fā)明的較佳實施例提供的數(shù)據(jù)庫的連接管理方法的流程圖;圖2所示為根據(jù)本發(fā)明的較佳實施例提供的數(shù)據(jù)庫的連接管理方法的流程圖;圖3所示為根據(jù)本發(fā)明的較佳實施例提供的數(shù)據(jù)庫的連接管理裝置的示意圖;圖4所示為根據(jù)本發(fā)明的較佳實施例提供的控制模塊的示意圖。
具體實施例方式下文中將參考附圖并結(jié)合實施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。圖1所示為根據(jù)本發(fā)明的較佳實施例提供的數(shù)據(jù)庫的連接管理方法的流程圖。如圖ι所示,本發(fā)明較佳實施例提供的數(shù)據(jù)庫的連接管理方法包括步驟101 104。于步驟 101中,數(shù)據(jù)庫調(diào)度進(jìn)程從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,并根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。于步驟102中,對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程從數(shù)據(jù)庫調(diào)度進(jìn)程接收數(shù)據(jù)庫數(shù)據(jù)請求。于步驟103中,數(shù)據(jù)庫執(zhí)行進(jìn)程判斷數(shù)據(jù)庫操作請求的類型,并調(diào)用與數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求。于步驟104中,于連接執(zhí)行數(shù)據(jù)庫操作請求后,數(shù)據(jù)庫執(zhí)行進(jìn)程將處于打開狀態(tài)的連接放回至數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。如下對上述過程進(jìn)行詳細(xì)說明。請參考圖2。圖2所示為根據(jù)本發(fā)明的較佳實施例提供的數(shù)據(jù)庫的連接管理方法的流程圖。如圖2所示,本實施例提供的數(shù)據(jù)庫的連接管理方法包括步驟201 207。于步驟201中,數(shù)據(jù)庫調(diào)度進(jìn)程從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求。于步驟202中,數(shù)據(jù)庫調(diào)度進(jìn)程根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級以及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。于此,數(shù)據(jù)庫操作請求的業(yè)務(wù)類型包括用戶信息管理、離線信息管理以及聊天信息管理。然而,本發(fā)明對此不作限定。于實際應(yīng)用中,可根據(jù)需要設(shè)置其他的業(yè)務(wù)類型。具體而言,當(dāng)數(shù)據(jù)庫調(diào)度進(jìn)程接收數(shù)據(jù)庫操作請求后,根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級,采用任務(wù)隊列管理數(shù)據(jù)庫操作請求的執(zhí)行順序。于此,優(yōu)先執(zhí)行業(yè)務(wù)類型優(yōu)先級較高的數(shù)據(jù)庫操作請求。舉例而言,用戶信息管理的優(yōu)先級高于離線信息管理及聊天信息管理,離線信息管理的優(yōu)先級高于聊天信息管理,此時,對用戶信息管理的操作(例如,查詢或修改)優(yōu)先處理,接著,對離線信息管理及聊天信息管理的操作依次執(zhí)行。此外,數(shù)據(jù)庫調(diào)度進(jìn)程根據(jù)業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。舉例而言,若關(guān)于用戶信息管理的業(yè)務(wù)類型對應(yīng)于數(shù)據(jù)庫執(zhí)行進(jìn)程1,關(guān)于離線信息管理的業(yè)務(wù)類型對應(yīng)于數(shù)據(jù)庫執(zhí)行進(jìn)程2,關(guān)于聊天信息管理的業(yè)務(wù)類型對應(yīng)于數(shù)據(jù)庫執(zhí)行進(jìn)程3,結(jié)合上述業(yè)務(wù)類型的優(yōu)先級,則數(shù)據(jù)庫調(diào)度進(jìn)程優(yōu)先將有關(guān)用戶信息管理的數(shù)據(jù)庫操作請求發(fā)送至數(shù)據(jù)庫執(zhí)行進(jìn)程1,然后依次將有關(guān)離線信息管理的數(shù)據(jù)庫操作請求發(fā)送至數(shù)據(jù)庫執(zhí)行進(jìn)程2,將有關(guān)聊天信息管理的數(shù)據(jù)庫操作請求發(fā)送至數(shù)據(jù)庫執(zhí)行進(jìn)程3。
于步驟203中,數(shù)據(jù)庫執(zhí)行進(jìn)程接收數(shù)據(jù)庫操作請求后判斷數(shù)據(jù)庫操作請求的類型。于此,數(shù)據(jù)庫操作請求的類型包括查詢、增加、刪除以及修改。然而,本發(fā)明并不限定于此。具體而言,當(dāng)數(shù)據(jù)庫執(zhí)行進(jìn)程接收數(shù)據(jù)庫操作請求后,首先將接收到的數(shù)據(jù)庫操作請求放入任務(wù)隊列中。然后,數(shù)據(jù)庫執(zhí)行進(jìn)程按照任務(wù)隊列調(diào)度的數(shù)據(jù)庫操作請求,判斷數(shù)據(jù)庫操作請求的類型。然而,本發(fā)明并不限定于此。于其他實施例中,數(shù)據(jù)庫執(zhí)行進(jìn)程接收數(shù)據(jù)庫操作請求后可先判斷數(shù)據(jù)庫操作請求的類型,然后,按照數(shù)據(jù)庫操作請求的類型將數(shù)據(jù)庫操作請求放入不同的任務(wù)隊列中,供后續(xù)執(zhí)行。接下來,以查詢操作為例進(jìn)行詳細(xì)說明,其他操作的執(zhí)行與查詢操作的執(zhí)行相同, 故于此不再贅述。于本實施例中,根據(jù)數(shù)據(jù)庫操作請求的類型,對不同的數(shù)據(jù)庫操作請求調(diào)用其對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以執(zhí)行所述數(shù)據(jù)庫操作請求,從而提高數(shù)據(jù)庫執(zhí)行效率。于步驟204中,數(shù)據(jù)庫執(zhí)行進(jìn)程判斷與查詢操作對應(yīng)的數(shù)據(jù)庫查詢連接堆棧是否存在信號量。于此,信號量的值即為數(shù)據(jù)庫查詢連接堆棧內(nèi)的連接的剩余數(shù)量。若數(shù)據(jù)庫查詢連接堆棧的信號量等于0,即數(shù)據(jù)庫查詢連接堆棧內(nèi)無可用連接時,數(shù)據(jù)庫操作請求(即查詢?nèi)蝿?wù))需等待直至有可用連接再進(jìn)行執(zhí)行。若數(shù)據(jù)庫查詢連接堆棧具有信號量,即數(shù)據(jù)庫查詢連接堆棧具有可用連接時,數(shù)據(jù)庫執(zhí)行進(jìn)程調(diào)用數(shù)據(jù)庫查詢連接堆棧內(nèi)的一條連接,同時信號量減一(如步驟205)。接著,于步驟206中,判斷上述連接是否處于打開狀態(tài)。 若連接處于打開狀態(tài),則連接執(zhí)行數(shù)據(jù)庫操作請求,并于執(zhí)行完成后將處于打開狀態(tài)的此條連接放回至數(shù)據(jù)庫查詢連接堆棧內(nèi),同時信號量加一(如步驟207)。若連接處于關(guān)閉狀態(tài),則先打開連接后再執(zhí)行步驟207。然而,本發(fā)明并不限定于此。于實際應(yīng)用中,數(shù)據(jù)庫執(zhí)行進(jìn)程可同時調(diào)用數(shù)據(jù)庫查詢連接堆棧內(nèi)的多條連接,以同時執(zhí)行多個數(shù)據(jù)庫操作請求。其中,于步驟207中,連接根據(jù)數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫查詢請求。舉例而言,數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型包括用戶信息查詢、離線信息查詢以及聊天信息查詢。相應(yīng)地,數(shù)據(jù)庫包括用戶信息數(shù)據(jù)庫、離線信息數(shù)據(jù)庫以及聊天信息數(shù)據(jù)庫。當(dāng)數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型為用戶信息查詢時,數(shù)據(jù)庫執(zhí)行進(jìn)程調(diào)用的連接訪問對應(yīng)的用戶信息數(shù)據(jù)庫,以查詢用戶信息;當(dāng)數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型為離線信息查詢時,數(shù)據(jù)庫執(zhí)行進(jìn)程調(diào)用的連接訪問對應(yīng)的離線信息數(shù)據(jù)庫;當(dāng)數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型為聊天信息查詢時,數(shù)據(jù)庫執(zhí)行進(jìn)程調(diào)用的連接訪問對應(yīng)的聊天信息數(shù)據(jù)庫。于此,數(shù)據(jù)庫執(zhí)行進(jìn)程調(diào)用的連接可訪問不同的數(shù)據(jù)庫。然而,本發(fā)明并不限定于此。于其他實施例中,數(shù)據(jù)庫進(jìn)程調(diào)用的連接可根據(jù)數(shù)據(jù)庫查詢請求的業(yè)務(wù)類型設(shè)置為訪問對應(yīng)類型的數(shù)據(jù)庫。如此,數(shù)據(jù)庫連接堆棧內(nèi)的連接可循環(huán)使用,從而提高利用率。而且,連接一旦被打開后一直處于打開狀態(tài),從而極大程度地節(jié)省了連接打開所耗費的時間,提高了數(shù)據(jù)庫的執(zhí)行效率。于此,使用信號量對可用連接的數(shù)量實時監(jiān)控,從而避免多個數(shù)據(jù)庫操作請求同時調(diào)用一個連接時造成連接失敗的問題。圖3所示為根據(jù)本發(fā)明較佳實施例提供的數(shù)據(jù)庫的連接管理裝置的示意圖。如圖 3所示,本實施例提供的數(shù)據(jù)庫的連接管理裝置包括調(diào)度模塊300、接收模塊301、判斷模塊 302、連接管理模塊303以及控制模塊304。其中,調(diào)度模塊300與接收模塊301相連,判斷模塊302與接收模塊301相連,連接管理模塊303與判斷模塊302相連,控制模塊304與連接管理模塊303相連。于本實施例中,調(diào)度模塊300用于從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,并根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的接收模塊301。判斷模塊302用于判斷接收到的數(shù)據(jù)庫操作請求的類型。連接管理模塊303用于調(diào)用與數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求。此外,于連接執(zhí)行數(shù)據(jù)庫操作請求后,連接管理模塊303將處于打開狀態(tài)的連接放回至數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。具體過程同前所述,故于此不再贅述。關(guān)于控制模塊304如下詳述。圖4所示為根據(jù)本發(fā)明較佳實施例提供的控制模塊304的示意圖。如圖4所示, 以數(shù)據(jù)庫查詢連接堆棧及數(shù)據(jù)庫修改連接堆棧為例進(jìn)行說明。當(dāng)數(shù)據(jù)庫查詢操作請求的數(shù)目大于數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接的最大值,且數(shù)據(jù)庫修改操作請求的數(shù)目小于數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值時,控制模塊304鎖定數(shù)據(jù)庫修改連接堆棧,并調(diào)用數(shù)據(jù)庫修改連接堆棧內(nèi)的剩余連接,且于控制模塊304解除數(shù)據(jù)庫修改連接的鎖定后,上述剩余連接執(zhí)行相應(yīng)數(shù)目的數(shù)據(jù)庫查詢操作請求。當(dāng)數(shù)據(jù)庫修改操作請求的數(shù)目大于數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值,且數(shù)據(jù)庫查詢操作請求的數(shù)目小于數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接的最大值時,控制模塊304鎖定數(shù)據(jù)庫查詢連接堆棧,并調(diào)用數(shù)據(jù)庫查詢連接堆棧內(nèi)的剩余連接,且于控制模塊304解除數(shù)據(jù)庫查詢連接的鎖定后,上述剩余連接執(zhí)行相應(yīng)數(shù)目的數(shù)據(jù)庫修改操作請求。同理,控制模塊對數(shù)據(jù)庫增加連接堆棧及數(shù)據(jù)庫刪除連接堆棧亦有相同處理。舉例而言,當(dāng)數(shù)據(jù)庫修改操作請求有5個,數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值為10個,而數(shù)據(jù)庫查詢操作請求有22個,數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接最大值為20 個。此時,控制模塊304先鎖定數(shù)據(jù)庫修改連接堆棧,并調(diào)用數(shù)據(jù)庫修改連接堆棧內(nèi)的2個剩余連接。之后,控制模塊304解除對數(shù)據(jù)庫修改連接堆棧的鎖定??刂颇K304調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的2個剩余連接執(zhí)行超過數(shù)據(jù)庫查詢連接堆棧的可用連接最大值的2 個數(shù)據(jù)庫查詢操作請求。于上述數(shù)據(jù)庫查詢操作請求執(zhí)行完成后,控制模塊304鎖定數(shù)據(jù)庫修改連接堆棧,并將調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的2個剩余連接放回至數(shù)據(jù)庫修改連接堆棧。之后,控制模塊304解除對數(shù)據(jù)庫修改連接堆棧的鎖定。然而,本發(fā)明并不限定于此。于其他實施例中,于上述數(shù)據(jù)庫查詢操作請求執(zhí)行完成后,控制模塊304調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的2個剩余連接可直接存放在數(shù)據(jù)庫查詢連接堆棧內(nèi)。當(dāng)數(shù)據(jù)庫修改操作請求有5個,數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值為10 個,而數(shù)據(jù)庫查詢操作請求有27個,數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接最大值為20個。此時, 控制模塊304先鎖定數(shù)據(jù)庫修改連接堆棧,并調(diào)用數(shù)據(jù)庫修改連接堆棧內(nèi)的5個剩余連接。 之后,控制模塊304解除對數(shù)據(jù)庫修改連接堆棧的鎖定??刂颇K304調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的5個剩余連接執(zhí)行超過數(shù)據(jù)庫查詢連接堆棧的可用連接最大值的5個數(shù)據(jù)庫查詢操作請求。另外,剩下2個數(shù)據(jù)庫查詢操作請求放入任務(wù)隊列中,等待后續(xù)的執(zhí)行。于上述數(shù)據(jù)庫查詢操作請求執(zhí)行完成后,控制模塊304鎖定數(shù)據(jù)庫修改連接堆棧,并將調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的5個剩余連接放回至數(shù)據(jù)庫修改連接堆棧。之后,控制模塊304 解除對數(shù)據(jù)庫修改連接堆棧的鎖定。然而,本發(fā)明并不限定于此。于其他實施例中,于上述
7數(shù)據(jù)庫查詢操作請求執(zhí)行完成后,控制模塊304調(diào)用的數(shù)據(jù)庫修改連接堆棧內(nèi)的2個剩余連接可直接存放在數(shù)據(jù)庫查詢連接堆棧內(nèi)。如此,充分利用了數(shù)據(jù)庫修改連接堆棧內(nèi)的空閑連接,提高了連接的利用率,同時亦提高了數(shù)據(jù)庫的整體執(zhí)行效率。然而,本發(fā)明并不限定于此。于其他實施例中,當(dāng)數(shù)據(jù)庫查詢連接堆棧內(nèi)的連接不夠用時,亦可創(chuàng)建新的連接執(zhí)行相應(yīng)的查詢操作。綜上所述,根據(jù)本發(fā)明較佳實施例提供的數(shù)據(jù)庫的連接管理方法及裝置,連接根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求,從而提高數(shù)據(jù)庫執(zhí)行效率。另外,數(shù)據(jù)庫調(diào)度進(jìn)程根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。如此,有利于負(fù)荷平衡,從而提高數(shù)據(jù)庫整體執(zhí)行效率。此外,通過數(shù)據(jù)庫連接堆棧實現(xiàn)數(shù)據(jù)庫連接的循環(huán)使用,同時防止建立過多數(shù)據(jù)庫連接占用系統(tǒng)內(nèi)存。而且,于連接執(zhí)行數(shù)據(jù)庫操作請求后,處于打開狀態(tài)的連接被放回至數(shù)據(jù)庫連接堆棧。如此,可循環(huán)使用已經(jīng)打開的連接,從而提高連接的使用效率。另外,根據(jù)數(shù)據(jù)庫操作請求的類型調(diào)用與其相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,如此,對數(shù)據(jù)庫操作進(jìn)行分離,提高數(shù)據(jù)庫執(zhí)行效率。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)庫的連接管理方法,其特征在于,包括以下步驟數(shù)據(jù)庫調(diào)度進(jìn)程從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,并根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將所述數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程;所述對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程從所述數(shù)據(jù)庫調(diào)度進(jìn)程接收所述數(shù)據(jù)庫操作請求;所述數(shù)據(jù)庫執(zhí)行進(jìn)程判斷所述數(shù)據(jù)庫操作請求的類型,并調(diào)用與所述數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行所述數(shù)據(jù)庫操作請求;于所述連接執(zhí)行所述數(shù)據(jù)庫操作請求后,所述數(shù)據(jù)庫執(zhí)行進(jìn)程將所述處于打開狀態(tài)的連接放回至所述數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫的連接管理方法,其特征在于,所述業(yè)務(wù)類型包括用戶信息管理、離線信息管理以及聊天信息管理。
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫的連接管理方法,其特征在于,所述數(shù)據(jù)庫連接堆棧包括數(shù)據(jù)庫查詢連接堆棧、數(shù)據(jù)庫增加連接堆棧、數(shù)據(jù)庫刪除連接堆棧及數(shù)據(jù)庫修改連接堆棧。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)庫的連接管理方法,其特征在于,所述數(shù)據(jù)庫操作請求的類型包括查詢、增加、刪除及修改。
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)庫的連接管理方法,其特征在于,當(dāng)數(shù)據(jù)庫查詢操作請求的數(shù)目大于數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接的最大值,且數(shù)據(jù)庫修改操作請求的數(shù)目小于數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值時,控制模塊鎖定上述數(shù)據(jù)庫修改連接堆棧, 并調(diào)用上述數(shù)據(jù)庫修改連接堆棧內(nèi)的剩余連接,且于上述控制模塊解除上述數(shù)據(jù)庫修改連接堆棧的鎖定后,上述剩余連接執(zhí)行相應(yīng)數(shù)目的數(shù)據(jù)庫查詢操作請求。
6.一種數(shù)據(jù)庫的連接管理裝置,其特征在于,包括調(diào)度模塊,用于從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,;接收模塊,與所述調(diào)度模塊相連,所述調(diào)度模塊根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將所述數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的接收模塊;判斷模塊,與所述接收模塊相連,用于判斷所述數(shù)據(jù)庫操作請求的類型;連接管理模塊,與所述判斷模塊相連,用于調(diào)用與所述數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行所述數(shù)據(jù)庫操作請求,并于所述連接執(zhí)行所述數(shù)據(jù)庫操作請求后,所述連接管理模塊將所述處于打開狀態(tài)的連接放回至所述數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)庫的連接管理裝置,其特征在于,所述業(yè)務(wù)類型包括用戶信息管理、離線信息管理及聊天信息管理。
8.根據(jù)權(quán)利要求6所述的數(shù)據(jù)庫的連接管理裝置,其特征在于,所述數(shù)據(jù)庫連接堆棧包括數(shù)據(jù)庫查詢連接堆棧、數(shù)據(jù)庫增加連接堆棧、數(shù)據(jù)庫刪除連接堆棧及數(shù)據(jù)庫修改連接堆棧。
9.根據(jù)權(quán)利要求8所述的數(shù)據(jù)庫的連接管理裝置,其特征在于,所述數(shù)據(jù)庫操作請求的類型包括查詢、增加、刪除及修改。
10.根據(jù)權(quán)利要求9所述的數(shù)據(jù)庫的連接管理裝置,其特征在于,還包括控制模塊,當(dāng)數(shù)據(jù)庫查詢操作請求的數(shù)目大于數(shù)據(jù)庫查詢連接堆棧內(nèi)可用連接的最大值,且數(shù)據(jù)庫修改操作請求的數(shù)目小于數(shù)據(jù)庫修改連接堆棧內(nèi)可用連接的最大值時,所述控制模塊鎖定數(shù)據(jù)庫修改連接堆棧,并調(diào)用上述數(shù)據(jù)庫修改連接堆棧內(nèi)的剩余連接,且于上述控制模塊解除上述數(shù)據(jù)庫修改連接堆棧的鎖定后,上述剩余連接執(zhí)行相應(yīng)數(shù)目的數(shù)據(jù)庫查詢操作請求。
全文摘要
本發(fā)明提供一種數(shù)據(jù)庫的連接管理方法及裝置。上述方法包括以下步驟。數(shù)據(jù)庫調(diào)度進(jìn)程從業(yè)務(wù)邏輯進(jìn)程接收數(shù)據(jù)庫操作請求,并根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型的優(yōu)先級及業(yè)務(wù)類型與數(shù)據(jù)庫執(zhí)行進(jìn)程的映射關(guān)系將數(shù)據(jù)庫操作請求發(fā)送至對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程。對應(yīng)的數(shù)據(jù)庫執(zhí)行進(jìn)程從數(shù)據(jù)庫調(diào)度進(jìn)程接收數(shù)據(jù)庫操作請求。數(shù)據(jù)庫執(zhí)行進(jìn)程判斷數(shù)據(jù)庫操作請求的類型,并調(diào)用與數(shù)據(jù)庫操作請求的類型相對應(yīng)的數(shù)據(jù)庫連接堆棧內(nèi)的連接,以根據(jù)數(shù)據(jù)庫操作請求的業(yè)務(wù)類型訪問對應(yīng)的數(shù)據(jù)庫執(zhí)行數(shù)據(jù)庫操作請求。于連接執(zhí)行數(shù)據(jù)庫操作請求后,數(shù)據(jù)庫執(zhí)行進(jìn)程將處于打開狀態(tài)的連接放回至數(shù)據(jù)庫連接堆棧,供下一次調(diào)用。
文檔編號G06F17/30GK102243655SQ201110161310
公開日2011年11月16日 申請日期2011年6月16日 優(yōu)先權(quán)日2011年6月16日
發(fā)明者胡加明 申請人:蘇州闊地網(wǎng)絡(luò)科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
拉萨市| 德兴市| 阿拉善右旗| 开鲁县| 元江| 富民县| 玛多县| 凌海市| 贵州省| 青神县| 平原县| 齐河县| 聂荣县| 湖州市| 静乐县| 九龙县| 鄂州市| 庄浪县| 宜章县| 通道| 平邑县| 郑州市| 淮北市| 龙里县| 拉孜县| 阳东县| 开封市| 永清县| 额尔古纳市| 威宁| 霞浦县| 辽源市| 离岛区| 榆树市| 六盘水市| 凤凰县| 松溪县| 鄢陵县| 金山区| 鱼台县| 宜都市|