一種數(shù)據(jù)交互方法及客戶端的制作方法
【專利摘要】本發(fā)明實施例公開了一種數(shù)據(jù)交互方法及客戶端,其中的方法包括:客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識;所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;所述客戶端以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接;所述客戶端根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。本發(fā)明實施例還公開了相應(yīng)的客戶端。本發(fā)明實施例提供的技術(shù)方案有利于避免現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
【專利說明】
一種數(shù)據(jù)交互方法及客戶端
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及通信技術(shù)領(lǐng)域,具體涉及一種數(shù)據(jù)交互方法及客戶端?!颈尘凹夹g(shù)】
[0002]連接池是一種采用池化管理連接資源,提高應(yīng)用系統(tǒng)對數(shù)據(jù)庫或服務(wù)器訪問性能的技術(shù)。連接池的主要功能是負責分配、管理和釋放連接,它允許應(yīng)用程序重復使用一個現(xiàn)有的連接,而再不是重新建立一個。采用連接池,可有效避免頻繁的連接的創(chuàng)建和關(guān)閉等耗時操作,能夠明顯提高對數(shù)據(jù)庫或服務(wù)器訪問的性能,是提高單個服務(wù)器或服務(wù)器連接管理和數(shù)據(jù)訪問的有效途徑。
[0003]在現(xiàn)有技術(shù)中,傳輸層和應(yīng)用層上都可以建立連接池。例如,基于服務(wù)器的連接池、數(shù)據(jù)庫連接池。但通常情況下,在一個應(yīng)用中,如果需要連接多種服務(wù)器或者多種數(shù)據(jù)庫時,就需要多個連接池協(xié)同處理來實現(xiàn)數(shù)據(jù)訪問,上述方法通常需要維護多個連接池,增加了維護的成本。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供了一種數(shù)據(jù)交互方法及客戶端,避免現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
[0005]本發(fā)明實施例第一方面提供一種數(shù)據(jù)交互方法,包括:
[0006]客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識;
[0007]所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同;
[0008]所述客戶端以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;
[0009]所述客戶端根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0010]進一步可選的,所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合包括:
[0011]所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;
[0012]若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;
[0013]若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。
[0014]進一步可選的,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);
[0015]所述創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合,包括:
[0016]在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類;
[0017]向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。
[0018]進一步可選的,所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述應(yīng)用標識對應(yīng)的目標連接包括:
[0019]所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;
[0020]若存在,獲取與所述應(yīng)用標識對應(yīng)的目標連接;[0021 ]若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。
[0022]進一步可選的,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。
[0023]本發(fā)明實施例第二方面提供一種客戶端,其特征在于,包括:
[0024]獲取模塊,用于獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識;
[0025]第一查詢模塊,用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同;
[0026]第二查詢模塊,還用于以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;[〇〇27]交互模塊,用于根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0028]進一步可選的,所述第一查詢模塊,具體用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。[〇〇29] 進一步可選的,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);
[0030]所述第一查詢模塊在用于創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合時,具體用于在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類;向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。
[0031]進一步可選的,所述第二查詢模塊,具體用于以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;若存在,獲取與所述應(yīng)用標識對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。
[0032]進一步可選的,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。 [〇〇33]可以看出,本發(fā)明實施例技術(shù)方案中,首先,客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識,以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,然后,以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,最終,根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。其中,通過所述通用連接池對不同連接對象的連接進行管理,避免了現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷?!靖綀D說明】
[0034]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0035]圖1是本發(fā)明第一實施例公開的一種網(wǎng)絡(luò)構(gòu)架的結(jié)構(gòu)示意圖;[〇〇36]圖2是本發(fā)明第二實施例提供的一種工作原理示意圖;
[0037]圖3是本發(fā)明第三實施例提供的一種通用連接池、連接集合類以及連接的關(guān)系示意圖;[〇〇38]圖4是本發(fā)明第四實施例提供的一種數(shù)據(jù)交互方法的流程示意圖;[〇〇39]圖5是本發(fā)明第五實施例提供的一種數(shù)據(jù)交互方法的流程示意圖;
[0040]圖6是本發(fā)明第六實施例提供的一種客戶端的結(jié)構(gòu)示意圖;[0041 ]圖7是本發(fā)明第七實施例提供的一種客戶端的結(jié)構(gòu)示意圖?!揪唧w實施方式】[〇〇42]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0043]本發(fā)明的說明書和權(quán)利要求書及上述附圖中的術(shù)語“包括”和“具有”以及它們?nèi)魏巫冃危鈭D在于覆蓋不排他的包含。例如包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設(shè)備沒有限定于已列出的步驟或單元,而是可選地還包括沒有列出的步驟或單元,或可選地還包括對于這些過程、方法、產(chǎn)品或設(shè)備固有的其他步驟或單元。
[0044]在本文中提及“實施例”意味著,結(jié)合實施例描述的特定特征、結(jié)構(gòu)或特性可以包含在本發(fā)明的至少一個實施例中。在說明書中的各個位置出現(xiàn)該短語并不一定均是指相同的實施例,也不是與其它實施例互斥的獨立的或備選的實施例。本領(lǐng)域技術(shù)人員顯式地和隱式地理解的是,本文所描述的實施例可以與其它實施例相結(jié)合。
[0045]為了更好理解本發(fā)明實施例公開的一種數(shù)據(jù)交互方法及客戶端,下面先對本發(fā)明實施例適用的網(wǎng)絡(luò)構(gòu)架進行描述。請參閱圖1,圖1是本發(fā)明第一實施例公開的一種網(wǎng)絡(luò)構(gòu)架的結(jié)構(gòu)示意圖。如圖1所示,該網(wǎng)絡(luò)構(gòu)架示意圖可以包括服務(wù)設(shè)備10和客戶端20,所述服務(wù)設(shè)備10與所述客戶端20通過互聯(lián)網(wǎng)30連接,其中,服務(wù)設(shè)備10可以包括接入服務(wù)器、群組服務(wù)器、應(yīng)用服務(wù)器、功能服務(wù)器、數(shù)據(jù)庫服務(wù)器、服務(wù)主機、服務(wù)系統(tǒng)以及服務(wù)平臺等,而客戶端可以包括集合群聊、視頻直播、頻道K歌、在線游戲、在線影視等功能為一體的客戶端。在圖1所示的網(wǎng)絡(luò)構(gòu)架中,該客戶端20可以運行在包括但不限于移動電話、移動電腦、平板電腦、個人數(shù)字助理(Personal Digital Assistant,PDA)、媒體播放器、智能電視、智能手表、智能眼鏡、智能手環(huán)等用戶設(shè)備上。
[0046]請參閱圖2和圖3,圖2是本發(fā)明第二實施例提供的一種工作原理示意圖,圖3是本發(fā)明第三實施例提供的一種通用連接池、連接集合以及連接的關(guān)系示意圖。結(jié)合圖2和圖3 所示,所述客戶端20可以與若干個服務(wù)設(shè)備10連接,上述服務(wù)設(shè)備10可以是Mysql數(shù)據(jù)庫服務(wù)器、Redis數(shù)據(jù)庫服務(wù)器、TCP服務(wù)器、HTTP服務(wù)器中的一種或幾種,所述客戶端20與所述服務(wù)設(shè)備之間建立通訊連接,所述客戶端20與所述服務(wù)設(shè)備10之間包括通用連接池301,該通用連接池管理若干連接集合302,再由該連接集合管理若干連接303。上述連接可以是基于某個應(yīng)用而建立的連接,如基于文本消息傳輸、文件傳輸、視頻或語音傳輸?shù)葢?yīng)用而分別建立的連接,而不同的應(yīng)用均具有唯一的應(yīng)用標識(Applicat1n ID,APPID),該應(yīng)用標識是通過全球唯一性的全球唯一標識ID(Global Unique Identifier,GUID)進行標識,例如: 對于傳輸圖片會有一個應(yīng)用標識、而傳輸文件、語音以及視頻等都會以相互不同的應(yīng)用標識進行標識。
[0047]為了一步闡述本發(fā)明的技術(shù)方案,請參閱圖4,圖4是本發(fā)明第四實施例提供的一種數(shù)據(jù)交互方法的流程示意圖,如圖4所示,本發(fā)明實施例中的數(shù)據(jù)交互方法包括以下步驟:[〇〇48]S401、客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識。
[0049]其中,與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器可以是Mysql數(shù)據(jù)庫服務(wù)器、Redis數(shù)據(jù)庫服務(wù)器、TCP服務(wù)器和HTTP服務(wù)器中的一種或幾種,目標服務(wù)器與目標應(yīng)用對應(yīng)。上述目標應(yīng)用可以是文本消息傳輸、文件傳輸、視頻或語音傳輸?shù)葢?yīng)用。
[0050]S402、所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同。
[0051]可以理解的,上述通用連接池中存儲有以不同的服務(wù)器標識對應(yīng)的服務(wù)器為連接對象的連接集合,上述連接集合可以包括以下一種或幾種:以Mysql數(shù)據(jù)庫服務(wù)器為連接對象的連接的連接集合,以Red is數(shù)據(jù)庫服務(wù)器為連接對象的連接的連接集合,以TCP服務(wù)器為連接對象的連接的連接集合和以HTTP服務(wù)器為連接對象的連接的連接集合。其中,每個連接集合對應(yīng)一個連接對象,也就是每個連接集合對應(yīng)一個服務(wù)器標識,不同的連接集合對應(yīng)的服務(wù)器標識不同。
[0052]其中,上述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合的具體實現(xiàn)方式可以是:
[0053]所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。[〇〇54]可以理解的,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,其中,所述連接類管理的連接包括可用的連接和不可用的連接兩種,其中,可用的連接是指沒有被使用或者使用后已返給連接類管理的連接;而不可用的連接是指正在被使用的或者被設(shè)置為無效鏈接的連接。
[0055]其中,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù)。
[0056]上述創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合的具體實現(xiàn)方式可以是:
[0057]在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類;向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。[〇〇58]S403、所述客戶端以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同。[〇〇59]可以理解的,上述目標可以包括文本消息傳輸、文件傳輸、視頻或語音傳輸?shù)葢?yīng)用,不同的應(yīng)用均具有唯一的應(yīng)用標識(Applicat1n ID,APPID),該應(yīng)用標識是通過全球唯一性的全球唯一標識ID (Global Unique Identifier,⑶ID)進行標識,例如:對于傳輸圖片會有一個應(yīng)用標識、而傳輸文件、語音以及視頻等都會以相互不同的應(yīng)用標識進行標識。
[0060]其中,上述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述應(yīng)用標識對應(yīng)的目標連接的具體實現(xiàn)方式可以是:[0061 ]所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;若存在,獲取與所述應(yīng)用標識對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。
[0062]S404、所述客戶端根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0063]其中,上述數(shù)據(jù)交互可以包括文本信息傳輸、圖片傳輸、文件或語音傳輸?shù)?。[〇〇64]可選的,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。
[0065]可以看出,本發(fā)明實施例技術(shù)方案中,首先,客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識,以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,然后,以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,最終,根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。其中,通過所述通用連接池對不同連接對象的連接進行管理,避免了現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
[0066]為了一步闡述本發(fā)明的技術(shù)方案,請參閱圖5,圖5是本發(fā)明第五實施例提供的一種數(shù)據(jù)交互方法的流程示意圖,如圖5所示,本發(fā)明實施例中的數(shù)據(jù)交互方法包括以下步驟:[〇〇67]S501、客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識。
[0068]其中,與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器可以是Mysql數(shù)據(jù)庫服務(wù)器、Redis數(shù)據(jù)庫服務(wù)器、TCP服務(wù)器和HTTP服務(wù)器中的一種或幾種,目標該服務(wù)器與目標應(yīng)用對應(yīng)。上述目標應(yīng)用可以是文本消息傳輸、文件傳輸、視頻或語音傳輸?shù)葢?yīng)用。[〇〇69]S502、所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合。
[0070]可以理解的,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同。
[0071]其中,若所述客戶端查詢預(yù)存的通用連接池中存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合,直接執(zhí)行步驟S505;否則,先執(zhí)行步驟S503至S504后,再繼續(xù)執(zhí)行步驟S505。 [〇〇72]S503、所述客戶端在所述連接池管理類中添加目標連接類,所述目標連接類繼承連接對象基類。[〇〇73]其中,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括: 初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù)。[0〇74] 可以理解的,連接池管理類CommConnPool管理通用連接池,通用連接池中存儲有至少一個連接集合,每個連接集合由相應(yīng)的連接類CommConnFor One Type進行管理,例如以Mysql數(shù)據(jù)庫服務(wù)器為連接對象的連接集合和以Redis數(shù)據(jù)庫服務(wù)器為連接對象的連接集合分別對應(yīng)不同的七7口61(1,由它們各自的17口61(1對應(yīng)的連接類(:011111£〇111^01'〇11617口6類來管理Mysql連接和Redis連接。也可以提供更細粒度的管理,比如應(yīng)用程序需要連接多臺 Mysql主機或多個Mysql集群,可以對每臺Mysql主機或每個Mysql集群定義一個Typeld。
[0075]其中,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。[〇〇76] 具體地,連接池管理類CommConnPool包含了初始化、獲取連接對象,歸還連接對象等基本函數(shù)。這幾個函數(shù)通過操作連接基類BaseWrapper來實現(xiàn)。[〇〇77]具體地,使用連接池管理類統(tǒng)一管理通用連接池,若所述客戶端查詢預(yù)存的通用連接池中不存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合,只需要添加一個新的目標連接類,它繼承BaseWrapper類,并實現(xiàn)Connet、HasErr這兩個虛函數(shù),上述兩個虛函數(shù)使得連接池管理類知道這個目標連接類對應(yīng)的連接如何連接,如何判斷連接已斷開。[〇〇78] 例如,要對Redis數(shù)據(jù)庫服務(wù)器使用連接類管理,即添加目標連接類RedisWrapper 類,它繼承自BaseWrapper類,并添加實現(xiàn)兩個虛函數(shù)Connect和HasErr。在這兩個函數(shù)中封裝API提供的redisConnectWithTimeout、redisFree函數(shù),用于判斷連接是否仍有效。
[0079] S504、向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。
[0080] S505、所述客戶端獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合。[0081 ] S506、所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;
[0082]其中,若查詢所述目標連接集合中存在與所述應(yīng)用標識對應(yīng)的目標連接,直接執(zhí)行步驟S508;否則先執(zhí)行步驟S507后,再執(zhí)行步驟S508。[〇〇83] S507、所述客戶端創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接。
[0084]其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;[〇〇85] S508、所述客戶端獲取與所述應(yīng)用標識對應(yīng)的目標連接。
[0086] S509、所述客戶端根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0087]可以看出,本發(fā)明實施例技術(shù)方案中,首先,客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識,以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,然后,以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,最終,根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。其中,通過所述通用連接池對不同連接對象的連接進行管理,避免了現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
[0088]下面為本發(fā)明裝置實施例,本發(fā)明裝置實施例用于執(zhí)行本發(fā)明方法實施例四至五實現(xiàn)的方法,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分,具體技術(shù)細節(jié)未揭示的,請參照本發(fā)明實施例四和實施例五。
[0089]請參閱圖6,圖6是本發(fā)明第六實施例提供的一種客戶端的結(jié)構(gòu)示意圖,本發(fā)明實施例中的客戶端是圖4至圖5方法實施例中的客戶端的運行載體,可以包括但不限于移動電話、移動電腦、平板電腦、個人數(shù)字助理(Personal Digital Assistant,PDA)、媒體播放器、 智能電視、智能手表、智能眼鏡、智能手環(huán)等用戶設(shè)備。具體地,如圖6所示,本發(fā)明實施例中的客戶端包括以下模塊:
[0090]獲取模塊601,用于獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識;
[0091]第一查詢模塊602,用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同; [〇〇92]第二查詢模塊603,還用于以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;[〇〇93]交互模塊604,用于根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0094]進一步可選的,所述第一查詢模塊602,具體用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合; 若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。
[0095]進一步可選的,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);
[0096]所述第一查詢模塊602在用于創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合時,具體用于在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類; 向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。
[0097]進一步可選的,所述第二查詢模塊603,具體用于以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;若存在, 獲取與所述應(yīng)用標識對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接, 并獲取所述目標連接。
[0098]進一步可選的,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。
[0099]具體的,上述各個模塊的具體實現(xiàn)可參考圖4至圖5對應(yīng)的方法實施例中相關(guān)步驟的描述,在此不贅述。
[0100]可以看出,本發(fā)明實施例技術(shù)方案中,首先,客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識,以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,然后,以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,最終,根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。其中,通過所述通用連接池對不同連接對象的連接進行管理,避免了現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
[0101]請參考圖7,圖7是本發(fā)明第七實施例公開的一種客戶端的結(jié)構(gòu)示意圖。本發(fā)明實施例中的客戶端是圖4至圖5方法實施例中的客戶端的運行載體,可以包括但不限于移動電話、移動電腦、平板電腦、個人數(shù)字助理(Personal Digital Assistant,PDA)、媒體播放器、 智能電視、智能手表、智能眼鏡、智能手環(huán)等用戶設(shè)備。具體地,如圖7所示,本發(fā)明實施例中的客戶端包括:至少一個處理器701,例如CPU,至少一個接收器703,至少一個存儲器704,至少一個發(fā)送器705,至少一個通信總線702。其中,通信總線702用于實現(xiàn)這些組件之間的連接通信。其中,本發(fā)明實施例中裝置的接收器703和發(fā)送器705可以是有線發(fā)送端口,也可以為無線設(shè)備,例如包括天線裝置,用于與其他節(jié)點設(shè)備進行信令或數(shù)據(jù)的通信。存儲器704 可以是高速RAM存儲器,也可以是非不穩(wěn)定的存儲器(non-volatile memory),例如至少一個磁盤存儲器。存儲器704可選的還可以是至少一個位于遠離前述處理器701的存儲裝置。 存儲器704中存儲一組程序代碼,且所述處理器701可通過通信總線702,調(diào)用存儲器704中存儲的代碼以執(zhí)彳丁相關(guān)的功能。[〇1〇2]所述處理器701,用于獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識;以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池, 獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同;以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。
[0103]可選的,所述處理器701,在用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合時,具體用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。
[0104]可選的,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);
[0105]所述處理器701,在用于創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合時,具體用于在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類;向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。
[0106]所述處理器701,在用于以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述應(yīng)用標識對應(yīng)的目標連接時,具體用于以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接; 若存在,獲取與所述應(yīng)用標識對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。
[0107]可選的,所述連接集合存儲有關(guān)于所述連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP地址、服務(wù)器的端口信息。
[0108]具體的,上述各個模塊的具體實現(xiàn)可參考圖4至圖5對應(yīng)的方法實施例中相關(guān)步驟的描述,在此不贅述。
[0109]可以看出,本發(fā)明實施例技術(shù)方案中,首先,客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器標識,以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,然后,以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,最終,根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。其中,通過所述通用連接池對不同連接對象的連接進行管理,避免了現(xiàn)有技術(shù)中,每個連接對象對應(yīng)一個連接池所導致的維護成本增加的缺陷。
[0110]本發(fā)明實施例還提供一種計算機存儲介質(zhì),其中,該計算機存儲介質(zhì)可存儲有程序,該程序執(zhí)行時包括上述方法實施例中記載的任何一種服務(wù)進程的監(jiān)控方法的部分或全部步驟。
[0111]需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本發(fā)明所必須的。
[0112]在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。
[0113]在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的裝置,可通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性或其它的形式。
[0114]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
[0115]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
[0116]所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可為個人計算機、服務(wù)器或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(R0M,Read-0nly Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0117]本領(lǐng)域普通技術(shù)人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲于一計算機可讀存儲介質(zhì)中,存儲介質(zhì)可以包括:閃存盤、只讀存儲器(英文= Read-Only Memory,簡稱:ROM)、隨機存取器(英文:Random Access Memory,簡稱:RAM)、磁盤或光盤等。
[0118]本發(fā)明上述各實施例所述連接可以是TCP連接,本領(lǐng)域的技術(shù)人員所知,TCP連接是基于TCP/IP協(xié)議的連接,TCP/IP協(xié)議是互聯(lián)網(wǎng)應(yīng)用中最基本的應(yīng)用協(xié)議,其協(xié)議簇包括接口層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層的各種協(xié)議,如HTTP協(xié)議、TCP協(xié)議、UDP協(xié)議、FTP協(xié)議、Telnet協(xié)議、SMTP協(xié)議和POP協(xié)議等。本發(fā)明實施例在于提供一種數(shù)據(jù)交互方法,該方法并不僅限于TCP協(xié)議。
[0119]以上對本發(fā)明實施例所提供的一種數(shù)據(jù)交互方法及客戶端進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【主權(quán)項】
1.一種數(shù)據(jù)交互方法,其特征在于,包括:客戶端獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標服務(wù)器 標識;所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池,獲取與 所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合, 所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同;所述客戶端以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標連接集 合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個連接, 所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;所述客戶端根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交互。2.如權(quán)利要求1所述的方法,其特征在于,所述客戶端以所述目標服務(wù)器標識為第一查 詢標識,查詢預(yù)存的通用連接池,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,包括:所述客戶端以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池中是否存 在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若存在,獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連接集合,并獲取所述目標集合。3.如權(quán)利要求2所述的方法,其特征在于,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連 接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函 數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);所述創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合,包括:在所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類; 向所述目標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的 連接是否有效的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。4.如權(quán)利要求2所述的方法,其特征在于,所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第 二查詢標識,查詢所述目標連接集合,獲取與所述應(yīng)用標識對應(yīng)的目標連接,包括:所述客戶端以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述目標連接集合中是 否存在與所述應(yīng)用標識對應(yīng)的目標連接;若存在,獲取與所述應(yīng)用標識對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。5.如權(quán)利要求1至4任一項所述的方法,其特征在于,所述連接集合存儲有關(guān)于所述連 接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所述 連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的IP 地址、服務(wù)器的端口信息。6.—種客戶端,其特征在于,包括:獲取模塊,用于獲取用于與所述客戶端的目標應(yīng)用進行數(shù)據(jù)交互的目標服務(wù)器的目標 服務(wù)器標識;第一查詢模塊,用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通用連接池, 獲取與所述目標服務(wù)器標識對應(yīng)的目標連接集合,其中,所述通用連接池包括至少兩個連接集合,所述至少兩個連接集合中的任意兩個連接集合對應(yīng)的服務(wù)器標識不同;第二查詢模塊,用于以所述目標應(yīng)用的目標應(yīng)用標識為第二查詢標識,查詢所述目標 連接集合,獲取與所述目標應(yīng)用標識對應(yīng)的目標連接,其中,所述連接集合中包括至少兩個 連接,所述至少兩個連接的任意兩個連接對應(yīng)的應(yīng)用標識不同;交互模塊,用于根據(jù)所述目標連接進行所述目標應(yīng)用和所述目標服務(wù)器之間的數(shù)據(jù)交 互。7.如權(quán)利要求6所述的客戶端,其特征在于,所述第一查詢模塊,具體用于以所述目標服務(wù)器標識為第一查詢標識,查詢預(yù)存的通 用連接池中是否存在與所述目標服務(wù)器標識對應(yīng)的目標連接集合;若存在,獲取與所述目 標服務(wù)器標識對應(yīng)的目標連接集合;若不存在,創(chuàng)建與所述目標服務(wù)器標識對應(yīng)的目標連 接集合,并獲取所述目標集合。8.如權(quán)利要求7所述的客戶端,其特征在于,所述通用連接池由連接池管理類進行管理,所述連接集合由連接類進行管理,所述連 接池管理類存儲有以連接對象基類為操作對象的至少一個函數(shù),所述函數(shù)包括:初始化函 數(shù)、獲取連接的連接對象函數(shù)和歸還連接的連接對象函數(shù);所述第一查詢模塊在用于創(chuàng)建與所述服務(wù)器標識對應(yīng)的目標連接集合時,具體用于在 所述連接池管理類中添加目標連接類,所述目標連接類繼承所述連接對象基類;向所述目 標連接類中添加與所述服務(wù)器標識對應(yīng)的用于判斷所述目標連接集合中的連接是否有效 的判斷函數(shù),以完成所述目標連接集合的創(chuàng)建。9.如權(quán)利要求7所述的客戶端,其特征在于,所述第二查詢模塊,具體用于以所述目標應(yīng)用的應(yīng)用標識為第二查詢標識,查詢所述 目標連接集合中是否存在與所述應(yīng)用標識對應(yīng)的目標連接;若存在,獲取與所述應(yīng)用標識 對應(yīng)的目標連接;若不存在,則創(chuàng)建與所述應(yīng)用標識對應(yīng)的目標連接,并獲取所述目標連接。10.如權(quán)利要求6至9任一項所述的客戶端,其特征在于,所述連接集合存儲有關(guān)于所述 連接集合中的連接的連接信息,所述連接信息包括:所述連接集合中的連接的連接標識、所 述連接集合中的連接的當前連接數(shù)目和最大連接數(shù)目,其中,所述連接標識包括:服務(wù)器的 IP地址、服務(wù)器的端口信息。
【文檔編號】G06F17/30GK105956000SQ201610247789
【公開日】2016年9月21日
【申請日】2016年4月20日
【發(fā)明人】黃偉
【申請人】廣州華多網(wǎng)絡(luò)科技有限公司