[發(fā)明專利]數(shù)據(jù)查找方法與裝置有效
| 申請?zhí)枺?/td> | 201510921166.1 | 申請日: | 2015-12-11 |
| 公開(公告)號: | CN105488208B | 公開(公告)日: | 2019-03-08 |
| 發(fā)明(設計)人: | 郭軍;梁敬彪;曾志海 | 申請(專利權(quán))人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號: | G06F16/953 | 分類號: | G06F16/953 |
| 代理公司: | 北京智匯東方知識產(chǎn)權(quán)代理事務所(普通合伙) 11391 | 代理人: | 康正德;孫曉芳 |
| 地址: | 100088 北京市西城區(qū)新*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 查找 方法 裝置 | ||
本發(fā)明提供了一種數(shù)據(jù)查找方法與裝置。其中數(shù)據(jù)查找方法包括:接收數(shù)據(jù)獲取請求,從對應數(shù)據(jù)庫的緩存中查找數(shù)據(jù)獲取請求所請求的數(shù)據(jù);在從對應數(shù)據(jù)庫的緩存中沒有查找到所請求的數(shù)據(jù)的情況下,從對應數(shù)據(jù)庫的緩存中獲取所請求的數(shù)據(jù)對應的令牌;在獲取到所述令牌的情況下,訪問對應數(shù)據(jù)庫以查找所請求的數(shù)據(jù)。本發(fā)明的技術(shù)方案,可以解決由于并發(fā)請求太多而導致數(shù)據(jù)庫訪問壓力過大的問題。
技術(shù)領(lǐng)域
本發(fā)明涉及一種計算機技術(shù)及互聯(lián)網(wǎng)領(lǐng)域,特別涉及一種數(shù)據(jù)查找方法與裝置。
背景技術(shù)
相關(guān)技術(shù)中,為了提高網(wǎng)站訪問速度,一些大型的、需要頻繁訪問數(shù)據(jù)庫的網(wǎng)站通常采用分布式的高速緩存系統(tǒng)。
相關(guān)技術(shù)中,分布式的高速緩存系統(tǒng)的工作流程為:先檢查客戶端的請求數(shù)據(jù)是否在內(nèi)存緩存中,如有,直接把請求數(shù)據(jù)返回,不再對數(shù)據(jù)庫進行任何操作;如果請求的數(shù)據(jù)不在內(nèi)存緩存中,則到數(shù)據(jù)庫中查找請求的數(shù)據(jù),在數(shù)據(jù)庫中查找到請求的數(shù)據(jù)后,從數(shù)據(jù)庫中獲取該數(shù)據(jù),并將從數(shù)據(jù)庫中獲取的數(shù)據(jù)返回給客戶端,同時將數(shù)據(jù)緩存一份到內(nèi)存中;每次更新數(shù)據(jù)庫的同時更新內(nèi)存緩存中的數(shù)據(jù),保證一致性。
根據(jù)上述工作流程中可知,在相關(guān)技術(shù)中,當請求的數(shù)據(jù)不在內(nèi)存時,轉(zhuǎn)而到數(shù)據(jù)庫中查找,假設當前查找到數(shù)據(jù)是熱門數(shù)據(jù),同時有多個并發(fā)請求,則處理該多個請求的進程同時都將到數(shù)據(jù)庫查找請求的數(shù)據(jù),如果并發(fā)請求過多,例如,對于當前的熱門消息,可能同時有上萬甚至上十萬、百萬的獲取請求,這將導致數(shù)據(jù)庫的訪問壓力過大,進而導致?lián)砣?/p>
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的數(shù)據(jù)存儲方案。
根據(jù)本發(fā)明的一個方面,本發(fā)明提供了一種數(shù)據(jù)查找方法包括:接收數(shù)據(jù)獲取請求,從對應數(shù)據(jù)庫的緩存中查找所述數(shù)據(jù)獲取請求所請求的數(shù)據(jù);在從所述對應數(shù)據(jù)庫的緩存中沒有查找到所請求的數(shù)據(jù)的情況下,從所述對應數(shù)據(jù)庫的緩存中獲取所請求的數(shù)據(jù)對應的令牌;在獲取到所述令牌的情況下,訪問所述對應數(shù)據(jù)庫以查找所請求的數(shù)據(jù)。
可選地,還包括:在獲取到所述令牌后,鎖定所述令牌,以使所述令牌無法再被獲取。
可選地,還包括:從所述對應數(shù)據(jù)庫獲取所請求的數(shù)據(jù),將所請求的數(shù)據(jù)返回給請求方并將所請求的數(shù)據(jù)存儲在所述對應數(shù)據(jù)庫的緩存中。
可選地,在將所請求的數(shù)據(jù)存儲在所述對應數(shù)據(jù)庫的緩存中之后,所述方法還包括:釋放所述令牌,使所述令牌能夠再被獲取。
可選地,還包括:在沒有獲取到所述令牌的情況下,等待預定時長t1后,再次從所述對應數(shù)據(jù)庫的緩存中查找所請求的數(shù)據(jù)。
可選地,在等待所述預定時長t1后,再次從所述對應數(shù)據(jù)庫的緩存中查找所請求的數(shù)據(jù)時,若仍未查找到所請求的數(shù)據(jù),所述方法還包括:步驟1,判斷等待的次數(shù)是否達到預設閾值或者等待的總時長是否超過預設閾值,如果是,則執(zhí)行步驟4,否則,執(zhí)行步驟2;步驟2,設置新的預定時長t2=前次預定時長t1+Δt,其中,Δt為有理數(shù);步驟3,等待新的預定時長t2后,再次從所述對應數(shù)據(jù)庫的緩存中查找所請求的數(shù)據(jù),如果查找到所述所請求的數(shù)據(jù),則返回給所述數(shù)據(jù)的請求方,如果仍未查找到,則返回執(zhí)行步驟1;步驟4,向所述數(shù)據(jù)的請求方返回未查詢到所請求的數(shù)據(jù)的信息。
可選地,在等待所述預定時長后,再次從所述對應數(shù)據(jù)庫的緩存中查找所請求的數(shù)據(jù)時,若查找到所請求的數(shù)據(jù),所述方法還包括:將查找到的所請求的數(shù)據(jù)返回給所述數(shù)據(jù)的請求方。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經(jīng)北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510921166.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:消防預警方法和裝置
- 下一篇:一種應用程序的推薦方法及終端
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





