[發(fā)明專(zhuān)利]數(shù)據(jù)傳輸方法及裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201410433031.6 | 申請(qǐng)日: | 2014-08-28 |
| 公開(kāi)(公告)號(hào): | CN105373420B | 公開(kāi)(公告)日: | 2019-12-06 |
| 發(fā)明(設(shè)計(jì))人: | 陳非;王超;朱超 | 申請(qǐng)(專(zhuān)利權(quán))人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類(lèi)號(hào): | G06F9/54 | 分類(lèi)號(hào): | G06F9/54;G06F16/25 |
| 代理公司: | 11276 北京市浩天知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) | 代理人: | 宋菲<國(guó)際申請(qǐng)>=<國(guó)際公布>=<進(jìn)入國(guó) |
| 地址: | 100088 北京市西城區(qū)新*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù)傳輸 方法 裝置 | ||
本發(fā)明公開(kāi)了一種數(shù)據(jù)傳輸方法及裝置,該方法中間件分配第一線程將數(shù)據(jù)發(fā)送至客戶端或數(shù)據(jù)庫(kù)之后,便釋放該第一線程,使該第一線程轉(zhuǎn)變?yōu)榭臻e狀態(tài),以便分配給其他客戶端或處理其他業(yè)務(wù),同時(shí),中間件會(huì)在監(jiān)聽(tīng)到客戶端和數(shù)據(jù)庫(kù)之間出現(xiàn)指定的網(wǎng)絡(luò)事件后,為客戶端和數(shù)據(jù)庫(kù)重新分配第二線程以進(jìn)行數(shù)據(jù)的傳輸,從而,不僅節(jié)省了中間件內(nèi)有限的線程資源為客戶端和數(shù)據(jù)庫(kù)間的數(shù)據(jù)傳輸提供數(shù)據(jù)服務(wù),也有效提升了線程的利用率。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸方法及裝置。
背景技術(shù)
隨著信息技術(shù)的發(fā)展,用戶通過(guò)客戶端可以訪問(wèn)互聯(lián)網(wǎng)以獲取所需的各類(lèi)數(shù)據(jù)?;ヂ?lián)網(wǎng)中各類(lèi)數(shù)據(jù)存儲(chǔ)在不同的數(shù)據(jù)庫(kù)(如MySQL數(shù)據(jù)庫(kù)、Oracle數(shù)據(jù)庫(kù)等)中,也就是說(shuō)用戶通過(guò)網(wǎng)絡(luò)途徑訪問(wèn)相應(yīng)的數(shù)據(jù)庫(kù)來(lái)獲取所需的數(shù)據(jù)。
在現(xiàn)有技術(shù)中,通常在數(shù)據(jù)庫(kù)和客戶端之間設(shè)置有中間件(一種數(shù)據(jù)中轉(zhuǎn)設(shè)備),以管理數(shù)據(jù)庫(kù)與大量客戶端之間的連接交互,并為各客戶端提供數(shù)據(jù)服務(wù),即客戶端與數(shù)據(jù)庫(kù)之間通過(guò)中間件進(jìn)行數(shù)據(jù)傳輸。
中間件中含有多個(gè)提供數(shù)據(jù)服務(wù)的線程,每一個(gè)線程會(huì)被分配給一個(gè)客戶端,為該客戶端提供數(shù)據(jù)服務(wù),當(dāng)一個(gè)線程接收了一個(gè)客戶端的數(shù)據(jù)請(qǐng)求后,該線程會(huì)將該數(shù)據(jù)請(qǐng)求轉(zhuǎn)發(fā)至數(shù)據(jù)庫(kù),并等待數(shù)據(jù)庫(kù)對(duì)該數(shù)據(jù)請(qǐng)求進(jìn)行處理的結(jié)果,之后,該線程再把結(jié)果反饋至發(fā)出數(shù)據(jù)請(qǐng)求的客戶端中。
但是,數(shù)據(jù)庫(kù)會(huì)接收到大量的數(shù)據(jù)請(qǐng)求,并行處理數(shù)據(jù)請(qǐng)求的數(shù)量有限,也就是說(shuō),線程將數(shù)據(jù)請(qǐng)求轉(zhuǎn)發(fā)給數(shù)據(jù)庫(kù)后,數(shù)據(jù)請(qǐng)求可能處于等待隊(duì)列中,而且,數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)請(qǐng)求進(jìn)行處理本身會(huì)需要一定的時(shí)間(幾秒至幾十秒不等),不能夠立刻就生成處理結(jié)果,那么在這段時(shí)間中,線程會(huì)一直處于等待狀態(tài)(該狀態(tài)下,線程不能處理其他業(yè)務(wù)),直到接收到數(shù)據(jù)庫(kù)反饋的處理的結(jié)果,再將該結(jié)果轉(zhuǎn)發(fā)至客戶端后,才能為其他客戶端提供數(shù)據(jù)服務(wù)或處理其他業(yè)務(wù),因此,造成了線程資源的浪費(fèi),也導(dǎo)致了線程利用率低。
發(fā)明內(nèi)容
鑒于上述問(wèn)題,提出了本發(fā)明以便提供一種克服上述問(wèn)題或者至少部分地解決上述問(wèn)題的數(shù)據(jù)傳輸方法及裝置,能夠有效節(jié)約現(xiàn)有的客戶端和數(shù)據(jù)庫(kù)之間在進(jìn)行數(shù)據(jù)通信的過(guò)程中所使用的線程,提升了線程的利用率。
根據(jù)本發(fā)明的第一個(gè)方面,提出一種數(shù)據(jù)傳輸方法,用于在客戶端與服務(wù)器之間通過(guò)中間件進(jìn)行數(shù)據(jù)傳輸,該方法包括:
所述中間件為所述客戶端和數(shù)據(jù)庫(kù)分配第一線程,使所述客戶端和數(shù)據(jù)庫(kù)通過(guò)所述第一線程傳輸數(shù)據(jù);
所述中間件在所述線程完成所述數(shù)據(jù)的傳輸后,釋放該第一線程;
監(jiān)聽(tīng)所述客戶端和數(shù)據(jù)庫(kù)的網(wǎng)絡(luò)事件;
當(dāng)監(jiān)聽(tīng)到指定網(wǎng)絡(luò)事件后,重新為所述客戶端和數(shù)據(jù)庫(kù)分配第二線程。
可選地,所述數(shù)據(jù)包括:所述客戶端向所數(shù)據(jù)庫(kù)發(fā)送的第一數(shù)據(jù),或,所述數(shù)據(jù)庫(kù)向所述客戶端發(fā)送的第二數(shù)據(jù);
所述指定網(wǎng)絡(luò)事件包括:所述數(shù)據(jù)庫(kù)根據(jù)所述第一數(shù)據(jù)生成第一響應(yīng)數(shù)據(jù)的網(wǎng)絡(luò)事件,或,所述客戶端根據(jù)所述第二數(shù)據(jù)生成第二響應(yīng)數(shù)據(jù)的網(wǎng)絡(luò)事件。
可選地,當(dāng)監(jiān)聽(tīng)到指定網(wǎng)絡(luò)事件后,重新為所述客戶端和數(shù)據(jù)庫(kù)分配第二線程,具體包括:
當(dāng)監(jiān)聽(tīng)到所述數(shù)據(jù)庫(kù)根據(jù)所述第一數(shù)據(jù)生成所述第一響應(yīng)數(shù)據(jù)的網(wǎng)絡(luò)事件時(shí),所述中間件重新為所述客戶端和數(shù)據(jù)庫(kù)分配第二線程,使所述數(shù)據(jù)庫(kù)通過(guò)重新分配的第二線程將該第一響應(yīng)數(shù)據(jù)傳輸至所述客戶端;或者
當(dāng)監(jiān)聽(tīng)到所述客戶端根據(jù)所述第二數(shù)據(jù)生成所述第二響應(yīng)數(shù)據(jù)時(shí),所述中間件重新為所述客戶端和數(shù)據(jù)庫(kù)分配第二線程,使所述客戶端通過(guò)重新分配的第二線程將該第二響應(yīng)數(shù)據(jù)傳輸至所述數(shù)據(jù)庫(kù)。
可選地,所述指定網(wǎng)絡(luò)事件還包括:所述客戶端或數(shù)據(jù)庫(kù)的存儲(chǔ)空間未飽和的網(wǎng)絡(luò)事件;
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經(jīng)北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410433031.6/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 一種并發(fā)數(shù)據(jù)傳輸控制方法、裝置及終端
- 數(shù)據(jù)傳輸處理方法和數(shù)據(jù)傳輸器
- 一種數(shù)據(jù)傳輸方法及裝置
- 數(shù)據(jù)傳輸方法、裝置及設(shè)備
- 一種數(shù)據(jù)傳輸終端、方法及系統(tǒng)
- 一種物聯(lián)網(wǎng)數(shù)據(jù)傳輸方式的選擇方法和裝置
- 數(shù)據(jù)傳輸方法、數(shù)據(jù)傳輸裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種基于電價(jià)的非實(shí)時(shí)數(shù)據(jù)傳輸調(diào)度方法
- 基于云計(jì)算的數(shù)據(jù)傳輸處理方法、裝置及系統(tǒng)
- 一種數(shù)據(jù)處理方法、裝置及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





