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

一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置制造方法

文檔序號:6490992閱讀:184來源:國知局
一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置制造方法
【專利摘要】本發(fā)明屬于數(shù)據(jù)存儲領(lǐng)域,尤其涉及一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置。本發(fā)明數(shù)據(jù)庫管理系統(tǒng)連接復用方法包括:建立數(shù)據(jù)庫連接池對象,并創(chuàng)建數(shù)據(jù)庫連接請求;分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,執(zhí)行下一步驟;選取該空閑狀態(tài)的可復用連接進行復用。本發(fā)明數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置根據(jù)已處理SQL語言類型設(shè)置MySQL連接是否可以復用,可以充分使用一個MySQL連接,提高系統(tǒng)總體性能;并根據(jù)SQL語言的處理狀態(tài)設(shè)置MySQL連接是否空閑,而避免連接復用效果依賴于使用方的問題,提高使用效率。
【專利說明】一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)據(jù)存儲【技術(shù)領(lǐng)域】,尤其涉及一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置。
【背景技術(shù)】
[0002]在現(xiàn)有封裝mysql操作的客戶端庫或者實現(xiàn)mysql讀寫分離的代理模塊中,采取了基于線程的連接復用技術(shù),將數(shù)據(jù)庫連接作為對象存儲在一個容器對象中,一旦數(shù)據(jù)庫連接建立后,不同的數(shù)據(jù)庫訪問請求就可以共享這些連接,這樣,通過復用這些已經(jīng)建立的數(shù)據(jù)庫連接,減少建立數(shù)據(jù)庫連接的時間,極大的節(jié)省系統(tǒng)資源和時間,提高整個系統(tǒng)的性能。其中,mysql是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng),關(guān)聯(lián)數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),增加了速度并提高了靈活性;連接復用技術(shù)為通過建立一個數(shù)據(jù)庫連接池以及一套連接使用、分配、管理策略,使得該連接池中的連接可以得到高效、安全的復用,避免了數(shù)據(jù)庫連接頻繁建立、關(guān)閉的開銷。連接復用主要機制包括:1、建立數(shù)據(jù)庫連接池(數(shù)據(jù)庫連接池負責分配、管理和釋放數(shù)據(jù)庫連接,它允許應(yīng)用程序重復使用一個現(xiàn)有的數(shù)據(jù)庫連接,而再不是重新建立一個;釋放空閑時間超過最大空閑時間的數(shù)據(jù)庫連接來避免因為沒有釋放數(shù)據(jù)庫連接而引起的數(shù)據(jù)庫連接遺漏)對象并創(chuàng)建好指定數(shù)量的數(shù)據(jù)庫連接;2、對于一個數(shù)據(jù)庫訪問請求,從連接池中得到一個空閑連接,如果數(shù)據(jù)庫連接池中沒有空閑連接且連接數(shù)沒有超過閾值則創(chuàng)建一個新的數(shù)據(jù)庫連接。
[0003]現(xiàn)有基于線程的MySQL連接復用技術(shù)存在以下缺點:一、系統(tǒng)資源開銷大;采取每個MySQL連接使用一個線程的方式,由于線程切換和線程管理會帶來額外的系統(tǒng)資源開銷,從而影響總體性能;二、使用受到限制;在現(xiàn)有技術(shù)中,如果某個mysql連接不是空閑狀態(tài)(使用方?jīng)]有關(guān)閉或者交換連接),則該連接一直不能被復用,連接復用效果依賴于使用方,使用效率不高。

【發(fā)明內(nèi)容】

[0004]本發(fā)明提供了一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置,旨在解決現(xiàn)有基于線程的MySQL連接復用技術(shù)系統(tǒng)資源開銷大且使用效率不高的問題。
[0005]本發(fā)明是這樣實現(xiàn)的,一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法,包括:
[0006]建立數(shù)據(jù)庫連接池對象,并創(chuàng)建數(shù)據(jù)庫連接請求;
[0007]分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,執(zhí)行下一步驟;
[0008]選取該空閑狀態(tài)的可復用連接進行復用。
[0009]本發(fā)明實施例的技術(shù)方案還包括:所述建立數(shù)據(jù)庫連接池對象步驟還包括:設(shè)置連接池連接數(shù)的閥值,所述創(chuàng)建數(shù)據(jù)庫連接請求步驟還包括:判斷連接池中的連接數(shù)是否超過閾值,如果連接池中的連接數(shù)沒有超過閾值,則創(chuàng)建一個新連接;如果連接池中的連接數(shù)超過閾值,則分析結(jié)構(gòu)化查詢語言。[0010]本發(fā)明實施例的技術(shù)方案還包括:所述根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接步驟還包括:分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果連接池中存在可復用的連接,分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài);如果連接池中不存在可復用的連接,結(jié)束本次連接。
[0011]本發(fā)明實施例的技術(shù)方案還包括:所述根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接步驟還包括:選取該可復用的連接,并分析連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷連接是否為空閑狀態(tài),如果連接為空閑狀態(tài),選取該空閑狀態(tài)的可復用連接進行復用;如果連接為非空閑狀態(tài),結(jié)束本次連接。
[0012]本發(fā)明實施例的技術(shù)方案還包括:所述分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接包括:根據(jù)結(jié)構(gòu)化查詢語言類型設(shè)置連接是否為可復用連接,設(shè)置的準則是:如果結(jié)構(gòu)化查詢語言類型具備上下文,則連接為不可復用的連接;如果結(jié)構(gòu)化查詢語言類型不具備上下文,則連接為可復用的連接。
[0013]本發(fā)明實施例的技術(shù)方案還包括:所述分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài)包括:根據(jù)結(jié)構(gòu)化查詢語言是否處理完畢來設(shè)置連接是否空閑,設(shè)置的準則是:如果結(jié)構(gòu)化查詢語言處理完畢則該連接為空閑狀態(tài);如果結(jié)構(gòu)化查詢語言沒有處理完畢則該連接為非空閑狀態(tài)。
[0014]本發(fā)明實施例采取的另一技術(shù)方案為:一種數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,包括連接池建立模塊、數(shù)據(jù)庫連接模塊、連接判斷模塊和連接選取模塊,所述連接池建立模塊用于建立數(shù)據(jù)庫連接池對象;所述數(shù)據(jù)庫連接模塊用于創(chuàng)建數(shù)據(jù)庫連接請求;所述連接判斷模塊用于分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,通過連接選取模塊選取該連接進行復用;所述連接選取模塊用于選取空閑狀態(tài)的可復用連接進行復用。
[0015]本發(fā)明實施例的技術(shù)方案還包括:所述數(shù)據(jù)庫管理系統(tǒng)連接復用裝置還包括連接數(shù)判斷模塊和連接創(chuàng)建模塊,所述連接池建立模塊建立數(shù)據(jù)庫連接池對象并設(shè)置連接池連接數(shù)的閥值,所述連接數(shù)判斷模塊用于判斷連接池中的連接數(shù)是否超過閾值,如果連接池中的連接數(shù)沒有超過閾值,通過連接創(chuàng)建模塊創(chuàng)建新的連接;如果連接池中的連接數(shù)超過閾值,通過連接判斷模塊判斷是否存在可復用連接;所述連接創(chuàng)建模塊用于創(chuàng)建新連接。
[0016]本發(fā)明實施例的技術(shù)方案還包括:所述連接判斷模塊還包括第一判斷單元和第二判斷單元,所述第一判斷單元用于分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果連接池中存在可復用的連接,通過第二判斷單元分析結(jié)構(gòu)化查詢語言處理狀態(tài);如果連接池中不存在可復用的連接,結(jié)束本次連接。
[0017]本發(fā)明實施例的技術(shù)方案還包括:所述第二判斷單元用于選取可復用的連接,并分析連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài),如果是,通過連接選取模塊選取該連接進行復用;如果否,結(jié)束本次連接。
[0018]本發(fā)明實施例的技術(shù)方案還包括:所述第一判斷單元分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接包括:根據(jù)結(jié)構(gòu)化查詢語言類型設(shè)置該連接是否為可復用連接,如果該結(jié)構(gòu)化查詢語言類型具備上下文,則所述連接為不可復用的連接;如果該結(jié)構(gòu)化查詢語言類型不具備上下文,則所述連接為可復用的連接。
[0019]本發(fā)明實施例的技術(shù)方案還包括:所述第二判斷單元分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài)包括:根據(jù)結(jié)構(gòu)化查詢語言是否處理完畢來設(shè)置該連接是否空閑,如果結(jié)構(gòu)化查詢語言處理完畢則該連接為空閑狀態(tài);如果結(jié)構(gòu)化查詢語言沒有處理完畢則該連接為非空閑狀態(tài)。
[0020]本發(fā)明的技術(shù)方案具有如下優(yōu)點或有益效果:本發(fā)明數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置根據(jù)已處理SQL語言類型設(shè)置MySQL連接是否可以復用,可以充分使用一個MySQL連接,提高系統(tǒng)總體性能;并根據(jù)SQL語言的處理狀態(tài)設(shè)置MySQL連接是否空閑,而避免連接復用效果依賴于使用方的問題,提高使用效率。
【專利附圖】

【附圖說明】
[0021]附圖1是本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法的流程圖;
[0022]附圖2是本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法的流程圖;
[0023]附圖3是本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置的結(jié)構(gòu)示意圖;
[0024]附圖4是本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0025]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進行進一步詳細說明。應(yīng)當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0026]請參閱圖1,是本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法的流程圖。本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法包括以下步驟:
[0027]步驟SlOO:建立數(shù)據(jù)庫連接池對象,并創(chuàng)建數(shù)據(jù)庫連接請求;
[0028]步驟SllO:分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,執(zhí)行步驟S120 ;
[0029]在步驟SllO中,對于一個數(shù)據(jù)庫操作請求,本發(fā)明根據(jù)SQL (Structured QueryLanguage,結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng))語言類型設(shè)置該連接是否為可復用連接,設(shè)置的準則是:如果該SQL語言類型是具備上下文的,則該連接為不可復用的連接;如果該SQL語言類型不具備上下文,則該連接為可復用的連接;其中,上下文是一種屬性的有序序列,它們?yōu)轳v留在環(huán)境內(nèi)的對象定義環(huán)境,在對象的激活過程中創(chuàng)建上下文,對象被配置為要求某些自動服務(wù),如同步、事務(wù)、實時激活及安全性等等;本發(fā)明根據(jù)SQL語言是否處理完畢來設(shè)置該連接是否空閑,設(shè)置的準則是:如果SQL語言處理完畢則該連接為空閑狀態(tài),如果SQL語言沒有處理完畢則該連接為非空閑狀態(tài)。
[0030]步驟S120:選取該空閑狀態(tài)的可復用連接進行復用;
[0031]在步驟S120中,一個連接被復用的條件是:該連接為可復用連接且該連接為空閑狀態(tài)。
[0032]請參閱圖2,是本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法的流程圖。本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用方法包括以下步驟:
[0033]步驟S200:建立數(shù)據(jù)庫連接池對象,并設(shè)置連接池連接數(shù)的閥值;
[0034]步驟S210:創(chuàng)建數(shù)據(jù)庫連接請求,并判斷連接池中的連接數(shù)是否超過閾值,如果否,執(zhí)行步驟S220 ;如果是,執(zhí)行步驟S230 ;
[0035]步驟S220:創(chuàng)建一個新連接,并執(zhí)行步驟S260 ;
[0036]步驟S230:分析SQL語言類型,根據(jù)SQL語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果是,執(zhí)行步驟S240 ;如果否,執(zhí)行步驟S260 ;
[0037]在步驟S230中,對于一個數(shù)據(jù)庫操作請求,本發(fā)明根據(jù)SQL (Structured QueryLanguage,結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng))語言類型設(shè)置該連接是否為可復用連接,設(shè)置的準則是:如果該SQL語言類型是具備上下文的,則該連接為不可復用的連接;如果該SQL語言類型不具備上下文,則該連接為可復用的連接;其中,上下文是一種屬性的有序序列,它們?yōu)轳v留在環(huán)境內(nèi)的對象定義環(huán)境,在對象的激活過程中創(chuàng)建上下文,對象被配置為要求某些自動服務(wù),如同步、事務(wù)、實時激活及安全性等等。
[0038]步驟S240:選取該可復用的連接,并分析該連接的SQL語言處理狀態(tài),根據(jù)SQL語言處理狀態(tài)判斷該連接是否為空閑狀態(tài),如果是,執(zhí)行步驟S250 ;如果否,執(zhí)行步驟S260 ;
[0039]在步驟S240中,對于一個連接,本發(fā)明根據(jù)SQL語言是否處理完畢來設(shè)置該連接是否空閑,設(shè)置的準則是:如果SQL語言處理完畢則該連接為空閑狀態(tài);如果SQL語言沒有處理完畢則該連接為非空閑狀態(tài)。
[0040]步驟S250:選取該空閑狀態(tài)的可復用連接進行復用;
[0041]在步驟S250中,一個連接被復用的條件是:該連接為可復用連接且該連接為空閑狀態(tài)。
[0042]步驟S260:結(jié)束本次連接。
[0043]請參閱圖3,是本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置的結(jié)構(gòu)示意圖。本發(fā)明第一實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置包括連接池建立模塊、數(shù)據(jù)庫連接模塊、連接判斷模塊和連接選取模塊,其中,
[0044]連接池建立模塊用于建立數(shù)據(jù)庫連接池對象;
[0045]數(shù)據(jù)庫連接模塊用于創(chuàng)建數(shù)據(jù)庫連接請求;
[0046]連接判斷模塊用于分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,通過連接選取模塊選取該連接進行復用;其中,對于一個數(shù)據(jù)庫操作請求,本發(fā)明根據(jù)SQL (Structured QueryLanguage,結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng))語言類型設(shè)置該連接是否為可復用連接,設(shè)置的準則是:如果該SQL語言類型是具備上下文的,則該連接為不可復用的連接;如果該SQL語言類型不具備上下文,則該連接為可復用的連接;其中,上下文是一種屬性的有序序列,它們?yōu)轳v留在環(huán)境內(nèi)的對象定義環(huán)境,在對象的激活過程中創(chuàng)建上下文,對象被配置為要求某些自動服務(wù),如同步、事務(wù)、實時激活及安全性等等;本發(fā)明根據(jù)SQL語言是否處理完畢來設(shè)置該連接是否空閑,設(shè)置的準則是:如果SQL語言處理完畢則該連接為空閑狀態(tài);如果SQL語言沒有處理完畢則該連接為非空閑狀態(tài)。[0047]連接選取模塊用于選取空閑狀態(tài)的可復用連接進行復用;其中,一個連接被復用的條件是:該連接為可復用連接且該連接為空閑狀態(tài)。
[0048]請參閱圖4,是本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置的結(jié)構(gòu)示意圖。本發(fā)明第二實施例的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置包括連接池建立模塊、數(shù)據(jù)庫連接模塊、連接數(shù)判斷模塊、連接創(chuàng)建模塊、連接判斷模塊和連接選取模塊,其中,
[0049]連接池建立模塊用于建立數(shù)據(jù)庫連接池對象,并設(shè)置連接池連接數(shù)的閥值;
[0050]數(shù)據(jù)庫連接模塊用于創(chuàng)建數(shù)據(jù)庫連接請求;
[0051]連接數(shù)判斷模塊用于判斷連接池中的連接數(shù)是否超過閾值,如果否,通過連接創(chuàng)建模塊創(chuàng)建新的連接;如果是,通過連接判斷模塊判斷是否存在可復用連接;
[0052]連接創(chuàng)建模塊用于創(chuàng)建一個新連接;
[0053]連接判斷模塊用于分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,通過連接選取模塊選取該連接進行復用;具體地,連接判斷模塊包括第一判斷單元和第二判斷單元,
[0054]第一判斷單元用于分析SQL語言類型,根據(jù)SQL語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果是,通過第二判斷單元分析SQL語言處理狀態(tài);如果否,結(jié)束本次連接;其中,對于一個數(shù)據(jù)庫操作請求,本發(fā)明根據(jù)SQL(Structured Query Language,結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng))語言類型設(shè)置該連接是否為可復用連接,設(shè)置的準則是:如果該SQL語言類型是具備上下文的,則該連接為不可復用的連接;如果該SQL語言類型不具備上下文,則該連接為可復用的連接;其中,上下文是一種屬性的有序序列,它們?yōu)轳v留在環(huán)境內(nèi)的對象定義環(huán)境,在對象的激活過程中創(chuàng)建上下文,對象被配置為要求某些自動服務(wù),如同步、事務(wù)、實時激活及安全性等等。
[0055]第二判斷單元用于選取該可復用的連接,并分析該連接的SQL語言處理狀態(tài),根據(jù)SQL語言處理狀態(tài)判斷該連接是否為空閑狀態(tài),如果是,通過連接選取模塊選取該連接進行復用;如果否,結(jié)束本次連接;其中,對于一個連接,本發(fā)明根據(jù)SQL語言是否處理完畢來設(shè)置該連接是否空閑,設(shè)置的準則是:如果SQL語言處理完畢則該連接為空閑狀態(tài);如果SQL語言沒有處理完畢則該連接為非空閑狀態(tài)。
[0056]連接選取模塊用于選取該空閑狀態(tài)的可復用連接進行復用;其中,一個連接被復用的條件是:該連接為可復用連接且該連接為空閑狀態(tài)。
[0057]本發(fā)明數(shù)據(jù)庫管理系統(tǒng)連接復用方法及裝置根據(jù)已處理SQL語言類型設(shè)置MySQL連接是否可以復用,可以充分使用一個MySQL連接,提高系統(tǒng)總體性能;并根據(jù)SQL語言的處理狀態(tài)設(shè)置MySQL連接是否空閑,而避免連接復用效果依賴于使用方的問題,提高使用效率。
[0058]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種數(shù)據(jù)庫管理系統(tǒng)連接復用方法,包括: 建立數(shù)據(jù)庫連接池對象,并創(chuàng)建數(shù)據(jù)庫連接請求; 分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,執(zhí)行下一步驟; 選取所述空閑狀態(tài)的可復用連接進行復用。
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫管理系統(tǒng)連接復用方法,其特征在于,所述建立數(shù)據(jù)庫連接池對象步驟還包括:設(shè)置連接池連接數(shù)的閥值,所述創(chuàng)建數(shù)據(jù)庫連接請求步驟還包括:判斷連接池中的連接數(shù)是否超過閾值,如果連接池中的連接數(shù)沒有超過閾值,則創(chuàng)建一個新連接;如果連接池中的連接數(shù)超過閾值,則分析結(jié)構(gòu)化查詢語言。
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)庫管理系統(tǒng)連接復用方法,其特征在于,所述根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接步驟還包括:分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果連接池中存在可復用的連接,分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài);如果連接池中不存在可復用的連接,結(jié)束本次連接。
4.根據(jù)權(quán)利要求3所述的數(shù)據(jù)庫管理系統(tǒng)連接復用方法,其特征在于,所述根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接步驟還包括:選取該可復用的連接,并分析連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷連接是否為空閑狀態(tài),如果連接為空閑狀態(tài),選取該空閑狀態(tài)的可復用連接進行復用;如果連接為非空閑狀態(tài),結(jié)束本次連接。
5.根據(jù)權(quán)利要求3所述的數(shù)據(jù)庫管理系統(tǒng)連接復用方法,其特征在于,所述分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接包括:根據(jù)結(jié)構(gòu)化查詢語言類型設(shè)置連接是否為可復用連接,設(shè)置的準則是:如果結(jié)構(gòu)化查詢語言類型具備上下文,則連接為不可復用的連接;如果結(jié)構(gòu)化查詢語言類型不具備上下文,則連接為可復用的連接。
6.根據(jù)權(quán)利要求4所述的數(shù)據(jù)庫管理系統(tǒng)連接復用方法,其特征在于,所述分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài)包括:根據(jù)結(jié)構(gòu)化查詢語言是否處理完畢來設(shè)置連接是否空閑,設(shè)置的準則是:如果結(jié)構(gòu)化查詢語言處理完畢則該連接為空閑狀態(tài);如果結(jié)構(gòu)化查詢語言沒有處理完畢則該連接為非空閑狀態(tài)。
7.一種數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,包括連接池建立模塊和數(shù)據(jù)庫連接模塊,所述連接池建立模塊用于建立數(shù)據(jù)庫連接池對象;所述數(shù)據(jù)庫連接模塊用于創(chuàng)建數(shù)據(jù)庫連接請求;其特征在于,還包括連接判斷模塊和連接選取模塊,所述連接判斷模塊用于分析結(jié)構(gòu)化查詢語言,根據(jù)結(jié)構(gòu)化查詢語言類型及處理狀態(tài)判斷數(shù)據(jù)庫連接池中是否存在空閑狀態(tài)的可復用連接,如果存在,通過連接選取模塊選取該連接進行復用;所述連接選取模塊用于選取空閑狀態(tài)的可復用連接進行復用。
8.根據(jù)權(quán)利要求7所述的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,其特征在于,還包括連接數(shù)判斷模塊和連接創(chuàng)建模塊,所述連接池建立模塊建立數(shù)據(jù)庫連接池對象并設(shè)置連接池連接數(shù)的閥值,所述連接數(shù)判斷模塊用于判斷連接池中的連接數(shù)是否超過閾值,如果連接池中的連接數(shù)沒有超過閾值,通過連接創(chuàng)建模塊創(chuàng)建新的連接;如果連接池中的連接數(shù)超過閾值,通過連接判斷模塊判斷是否存在可復用連接;所述連接創(chuàng)建模塊用于創(chuàng)建新連接。
9.根據(jù)權(quán)利要求7所述的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,其特征在于,所述連接判斷模塊還包括第一判斷單元和第二判斷單元,所述第一判斷單元用于分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接,如果連接池中存在可復用的連接,通過第二判斷單元分析結(jié)構(gòu)化查詢語言處理狀態(tài);如果連接池中不存在可復用的連接,結(jié)束本次連接。
10.根據(jù)權(quán)利要求9所述的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,其特征在于,所述第二判斷單元用于選取可復用的連接,并分析連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài),如果是,通過連接選取模塊選取該連接進行復用;如果否,結(jié)束本次連接。
11.根據(jù)權(quán)利要求9所述的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,其特征在于,所述第一判斷單元分析結(jié)構(gòu)化查詢語言類型,根據(jù)結(jié)構(gòu)化查詢語言類型判斷數(shù)據(jù)庫連接池中是否存在可復用的連接包括:根據(jù)結(jié)構(gòu)化查詢語言類型設(shè)置該連接是否為可復用連接,如果該結(jié)構(gòu)化查詢語言類型具備上下文,則所述連接為不可復用的連接;如果該結(jié)構(gòu)化查詢語言類型不具備上下文,則所述連接為可復用的連接。
12.根據(jù)權(quán)利要求10所述的數(shù)據(jù)庫管理系統(tǒng)連接復用裝置,其特征在于,所述第二判斷單元分析該連接的結(jié)構(gòu)化查詢語言處理狀態(tài),根據(jù)結(jié)構(gòu)化查詢語言處理狀態(tài)判斷該連接是否為空閑狀態(tài)包括:根據(jù)結(jié)構(gòu)化查詢語言是否處理完畢來設(shè)置該連接是否空閑,如果結(jié)構(gòu)化查詢語言處理完畢則該連接為空閑狀態(tài);如果結(jié)構(gòu)化查詢語言沒有處理完畢則該連接為非空閑狀態(tài)。
【文檔編號】G06F17/30GK103810203SQ201210453646
【公開日】2014年5月21日 申請日期:2012年11月13日 優(yōu)先權(quán)日:2012年11月13日
【發(fā)明者】程彬, 李宇 申請人:深圳市騰訊計算機系統(tǒng)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
海盐县| 墨脱县| 探索| 德令哈市| 察隅县| 巢湖市| 从化市| 新建县| 库车县| 渝北区| 宁国市| 新巴尔虎右旗| 涡阳县| 如东县| 泽库县| 大宁县| 巴马| 郁南县| 绵竹市| 白沙| 泉州市| 浦北县| 利川市| 南木林县| 襄垣县| 桂平市| 兴和县| 张家界市| 合作市| 杂多县| 佛冈县| 南宁市| 凤山县| 勐海县| 德清县| 镇安县| 衡南县| 阿合奇县| 石景山区| 丹凤县| 湘潭县|