国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法及系統(tǒng)與流程

      文檔序號(hào):12598060閱讀:391來源:國(guó)知局
      一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法及系統(tǒng)與流程

      本發(fā)明屬于通信技術(shù)領(lǐng)域,尤其涉及一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法及系統(tǒng)。



      背景技術(shù):

      隨著“互聯(lián)網(wǎng)+金融”的飛速發(fā)展,投資者也越來越多,互聯(lián)網(wǎng)投融資平臺(tái)的在線用戶訪問量也越來越多,在高并發(fā)場(chǎng)景時(shí),大量的用戶訪問請(qǐng)求都會(huì)落到互聯(lián)網(wǎng)投融資平臺(tái)的服務(wù)層或者數(shù)據(jù)庫上,這樣會(huì)給互聯(lián)網(wǎng)投融資平臺(tái)的服務(wù)層和數(shù)據(jù)庫造成巨大的壓力,從而導(dǎo)致用戶請(qǐng)求的平均響應(yīng)時(shí)間加長(zhǎng),間接延長(zhǎng)了用戶等待時(shí)間,影響了用戶體驗(yàn)。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明實(shí)施例的目的在于提供一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法及系統(tǒng),旨在解決上述在高并發(fā)場(chǎng)景時(shí),大量的用戶訪問請(qǐng)求都會(huì)落到互聯(lián)網(wǎng)投融資平臺(tái)的服務(wù)層或者數(shù)據(jù)庫上,這樣會(huì)給互聯(lián)網(wǎng)投融資平臺(tái)的服務(wù)層和數(shù)據(jù)庫造成巨大的壓力,從而導(dǎo)致用戶請(qǐng)求的平均響應(yīng)時(shí)間加長(zhǎng),間接延長(zhǎng)了用戶等待時(shí)間,影響了用戶體驗(yàn)的問題。

      本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法,包括:

      接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(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ù)方案的基礎(chǔ)上,所述接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(shù)據(jù)接口之前還包括:

      統(tǒng)計(jì)各個(gè)數(shù)據(jù)接口的訪問頻率,并判斷所述數(shù)據(jù)接口的訪問頻率是否符合預(yù)設(shè)條件;

      若所述數(shù)據(jù)接口的訪問頻率符合預(yù)設(shè)條件,則將所述數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口,在所述數(shù)據(jù)接口中緩存數(shù)據(jù)庫查詢結(jié)果;

      將所述數(shù)據(jù)接口添加至數(shù)據(jù)更新任務(wù)列表中,并為所述數(shù)據(jù)接口設(shè)置相應(yīng)的數(shù)據(jù)更新頻率,保證所述數(shù)據(jù)接口中的緩存數(shù)據(jù)在需要進(jìn)行實(shí)時(shí)更新的時(shí)間段內(nèi)定時(shí)更新。

      在上述技術(shù)方案的基礎(chǔ)上,所述若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)未過期,則讀取數(shù)據(jù)接口中的緩存數(shù)據(jù),并將所述緩存數(shù)據(jù)返回至所述客戶端之后還包括:

      更新所述數(shù)據(jù)接口的訪問時(shí)間;

      實(shí)時(shí)統(tǒng)計(jì)更新后的所述數(shù)據(jù)接口的訪問時(shí)間與業(yè)務(wù)系統(tǒng)當(dāng)前時(shí)間之間的第二差值,判斷所述第二差值是否大于預(yù)設(shè)時(shí)間值,若大于預(yù)設(shè)時(shí)間值,則將所述數(shù)據(jù)接口從所述數(shù)據(jù)更新任務(wù)列表中刪除。

      在上述技術(shù)方案的基礎(chǔ)上,若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期之后還包括:

      若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)已過期,則對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn);

      若校驗(yàn)通過,則通過接口服務(wù)訪問業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫,以根據(jù)所述業(yè)務(wù)請(qǐng)求更新所述數(shù)據(jù)接口的緩存數(shù)據(jù),并將更新后的緩存數(shù)據(jù)返回至所述客戶端。

      在上述技術(shù)方案的基礎(chǔ)上,所述若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期具體包括:

      若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則獲取所述數(shù)據(jù)接口此次接收到業(yè)務(wù)請(qǐng)求的第一時(shí)間和所述數(shù)據(jù)接口前次接收到業(yè)務(wù)請(qǐng)求的第二時(shí)間,根據(jù)所述第一時(shí)間和第二時(shí)間之間的第一差值判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期。

      本發(fā)明實(shí)施例的另一目的在于提供一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng),包括:

      接口路由模塊,用于接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(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ù)方案的基礎(chǔ)上,還包括:

      接口訪問頻率統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)各個(gè)數(shù)據(jù)接口的訪問頻率,并判斷所述數(shù)據(jù)接口的訪問頻率是否符合預(yù)設(shè)條件;

      數(shù)據(jù)接口緩存模塊,用于若所述數(shù)據(jù)接口的訪問頻率符合預(yù)設(shè)條件,則將所述數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口,在所述數(shù)據(jù)接口中緩存數(shù)據(jù)庫查詢結(jié)果;

      定時(shí)更新模塊,用于將所述數(shù)據(jù)接口添加至數(shù)據(jù)更新任務(wù)列表中,并為所述數(shù)據(jù)接口設(shè)置相應(yīng)的數(shù)據(jù)更新頻率,保證所述數(shù)據(jù)接口中的緩存數(shù)據(jù)在需要進(jìn)行實(shí)時(shí)更新的時(shí)間段內(nèi)定時(shí)更新。

      在上述技術(shù)方案的基礎(chǔ)上,還包括:

      訪問時(shí)間更新模塊,用于更新所述數(shù)據(jù)接口的訪問時(shí)間;

      定時(shí)更新任務(wù)管理模塊,用于實(shí)時(shí)統(tǒng)計(jì)更新后的所述數(shù)據(jù)接口的訪問時(shí)間與業(yè)務(wù)系統(tǒng)當(dāng)前時(shí)間之間的第二差值,判斷所述第二差值是否大于預(yù)設(shè)時(shí)間值,若大于預(yù)設(shè)時(shí)間值,則將所述數(shù)據(jù)接口從所述數(shù)據(jù)更新任務(wù)列表中刪除。

      在上述技術(shù)方案的基礎(chǔ)上,還包括:

      校驗(yàn)?zāi)K,用于若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)已過期,則對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn);

      接口服務(wù)模塊,用于若校驗(yàn)通過,則通過接口服務(wù)訪問業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫,以根據(jù)所述業(yè)務(wù)請(qǐng)求更新所述數(shù)據(jù)接口的緩存數(shù)據(jù),并將更新后的緩存數(shù)據(jù)返回至所述客戶端。

      在上述技術(shù)方案的基礎(chǔ)上,所述緩存數(shù)據(jù)過期判斷模塊具體用于:

      若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則獲取所述數(shù)據(jù)接口此次接收到業(yè)務(wù)請(qǐng)求的第一時(shí)間和所述數(shù)據(jù)接口前次接收到業(yè)務(wù)請(qǐng)求的第二時(shí)間,根據(jù)所述第一時(shí)間和第二時(shí)間之間的第一差值判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期。

      實(shí)施本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法及系統(tǒng)具有以下有益效果:

      本發(fā)明實(shí)施例由于首先接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(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í)現(xiàn)快速高效的訪問通用數(shù)據(jù)接口,緩解高并發(fā)場(chǎng)景下互聯(lián)網(wǎng)投融資平臺(tái)服務(wù)層和數(shù)據(jù)庫的壓力,縮短了業(yè)務(wù)請(qǐng)求的響應(yīng)時(shí)間,提升了用戶體驗(yàn)。

      附圖說明

      圖1是本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法的具體實(shí)現(xiàn)流程圖;

      圖2是本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)的示意性框圖。

      具體實(shí)施方式

      為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

      圖1是本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法的具體實(shí)現(xiàn)流程圖。參見圖1所示,本實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法可以包括以下步驟:

      在S101中,接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(shù)據(jù)接口。

      在本實(shí)施例中,在步驟S101之前還可以包括:

      統(tǒng)計(jì)各個(gè)數(shù)據(jù)接口的訪問頻率,并判斷所述數(shù)據(jù)接口的訪問頻率是否符合預(yù)設(shè)條件;

      若所述數(shù)據(jù)接口的訪問頻率符合預(yù)設(shè)條件,則將所述數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口,在所述數(shù)據(jù)接口中緩存數(shù)據(jù)庫查詢結(jié)果;

      將所述數(shù)據(jù)接口添加至數(shù)據(jù)更新任務(wù)列表中,并為所述數(shù)據(jù)接口設(shè)置相應(yīng)的數(shù)據(jù)更新頻率,保證所述數(shù)據(jù)接口中的緩存數(shù)據(jù)在需要進(jìn)行實(shí)時(shí)更新的時(shí)間段內(nèi)定時(shí)更新。

      在具體應(yīng)用中,若所述數(shù)據(jù)接口的訪問頻率大于預(yù)設(shè)訪問頻率,則將該數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)接口,在該數(shù)據(jù)接口的存儲(chǔ)區(qū)域中劃分一緩存區(qū)用于緩存根據(jù)客戶端發(fā)送的訪問請(qǐng)求從數(shù)據(jù)庫中獲取的業(yè)務(wù)數(shù)據(jù),以便用戶下次向該數(shù)據(jù)接口發(fā)送業(yè)務(wù)請(qǐng)求時(shí),可直接從該數(shù)據(jù)接口的緩存區(qū)中讀取之前緩存的業(yè)務(wù)數(shù)據(jù),而不用再次訪問數(shù)據(jù)庫,從而可減少數(shù)據(jù)庫的訪問壓力。

      在具體應(yīng)用中,由于數(shù)據(jù)庫中存儲(chǔ)的與數(shù)據(jù)接口相對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)可能是隨著時(shí)間的變化而變化的,因此,為了保證數(shù)據(jù)接口中緩存數(shù)據(jù)的有效性,有必要對(duì)該數(shù)據(jù)接口中的緩存數(shù)據(jù)進(jìn)行實(shí)時(shí)更新,為此,本實(shí)施例中采用預(yù)先建立數(shù)據(jù)更新任務(wù)列表,將需要進(jìn)行實(shí)時(shí)更新的數(shù)據(jù)接口添加至所述數(shù)據(jù)更新任務(wù)列表中,并在所述數(shù)據(jù)更新任務(wù)列表中設(shè)置各數(shù)據(jù)接口所對(duì)應(yīng)的數(shù)據(jù)更新時(shí)間段以及數(shù)據(jù)更新頻率,后續(xù)當(dāng)業(yè)務(wù)系統(tǒng)的系統(tǒng)時(shí)間處于所述數(shù)據(jù)接口所對(duì)應(yīng)的數(shù)據(jù)更新時(shí)間段時(shí),自動(dòng)根據(jù)該數(shù)據(jù)接口所對(duì)應(yīng)的數(shù)據(jù)更新頻率更新該數(shù)據(jù)接口中的緩存數(shù)據(jù)。

      在S102中,判斷所述數(shù)據(jù)接口是否為緩存數(shù)據(jù)的數(shù)據(jù)接口,若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則進(jìn)入步驟S103。

      在本實(shí)施例中,具體可通過查詢所述數(shù)據(jù)更新任務(wù)列表來判斷所述數(shù)據(jù)接口是否為緩存數(shù)據(jù)的數(shù)據(jù)接口,若所述數(shù)據(jù)更新任務(wù)列表中包含所述數(shù)據(jù)接口,則說明該數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口;反之,若所述數(shù)據(jù)更新任務(wù)列表中不包含所述數(shù)據(jù)接口,則說明該數(shù)據(jù)接口不是緩存數(shù)據(jù)的數(shù)據(jù)接口。

      在S103中,判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期,若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)未過期,則進(jìn)入步驟S104;若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)已過期,則進(jìn)入步驟S105。

      在本實(shí)施例中,所述判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期具體包括:

      獲取所述數(shù)據(jù)接口此次接收到業(yè)務(wù)請(qǐng)求的第一時(shí)間和所述數(shù)據(jù)接口前次接收到業(yè)務(wù)請(qǐng)求的第二時(shí)間,根據(jù)所述第一時(shí)間和第二時(shí)間之間的第一差值判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期。

      在本實(shí)施例中,若所述第一時(shí)間和第二時(shí)間之間的差值大于預(yù)設(shè)的時(shí)間閾值,則說明所述數(shù)據(jù)接口中的緩存數(shù)據(jù)過期。優(yōu)選的,所述預(yù)設(shè)的時(shí)間閾值為5min。

      在S104中,讀取數(shù)據(jù)接口中的緩存數(shù)據(jù),并將所述緩存數(shù)據(jù)返回至所述客戶端。

      在本實(shí)施例中,若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)未過期,則說明該數(shù)據(jù)接口緩存的業(yè)務(wù)數(shù)據(jù)為有效數(shù)據(jù),此時(shí)可直接將該數(shù)據(jù)接口緩存的業(yè)務(wù)數(shù)據(jù)返回至客戶端,不必再訪問數(shù)據(jù)庫從數(shù)據(jù)庫中讀取業(yè)務(wù)數(shù)據(jù),因此減輕了數(shù)據(jù)庫的訪問壓力,并且縮短了業(yè)務(wù)請(qǐng)求的響應(yīng)時(shí)間。

      進(jìn)一步的,在本實(shí)施例中,步驟S104之后還可以還包括:

      更新所述數(shù)據(jù)接口的訪問時(shí)間;

      實(shí)時(shí)統(tǒng)計(jì)更新后的所述數(shù)據(jù)接口的訪問時(shí)間與業(yè)務(wù)系統(tǒng)當(dāng)前時(shí)間之間的第二差值,判斷所述第二差值是否大于預(yù)設(shè)時(shí)間值,若大于預(yù)設(shè)時(shí)間值,則將所述數(shù)據(jù)接口從所述數(shù)據(jù)更新任務(wù)列表中刪除。

      在具體應(yīng)用中,若之前被設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口在較長(zhǎng)時(shí)間內(nèi)未接收到客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,則說明其訪問頻率已經(jīng)不再符合預(yù)設(shè)要求,此時(shí)需要停止對(duì)其進(jìn)行數(shù)據(jù)更新,因此,將其從數(shù)據(jù)更新任務(wù)列表中刪除,這樣可以進(jìn)一步提高業(yè)務(wù)系統(tǒng)的數(shù)據(jù)處理速度。

      在S105中,對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn),若校驗(yàn)通過,則通過接口服務(wù)訪問業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫,以根據(jù)所述業(yè)務(wù)請(qǐng)求更新所述數(shù)據(jù)接口的緩存數(shù)據(jù),并將更新后的緩存數(shù)據(jù)返回至所述客戶端。

      在本實(shí)施例中,若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)已過期,則需要通過訪問數(shù)據(jù)庫來獲取與所述業(yè)務(wù)請(qǐng)求相匹配的業(yè)務(wù)數(shù)據(jù),此時(shí)需要對(duì)發(fā)送業(yè)務(wù)請(qǐng)求的客戶端進(jìn)行身份驗(yàn)證,確定所述客戶端是否具有相應(yīng)的訪問權(quán)限。其中,對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn)具體包括:

      通過Koauth2中間件判斷所述業(yè)務(wù)請(qǐng)求所訪問的數(shù)據(jù)接口是公有接口還是私有接口;

      若是公有接口,則通過基于oauth2協(xié)議的第三方平臺(tái)對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn);若是私有接口,則直接根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的訪問者傳入的用戶級(jí)進(jìn)行token校驗(yàn)。

      本實(shí)施例中,由于首先將訪問頻率較高的數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口,并在這些數(shù)據(jù)接口中緩存數(shù)據(jù)庫訪問結(jié)果,后續(xù)當(dāng)這些數(shù)據(jù)接口再次接收到客戶端發(fā)送的業(yè)務(wù)請(qǐng)求后直接從數(shù)據(jù)接口中讀取相應(yīng)的業(yè)務(wù)數(shù)據(jù)返回給客戶,僅在數(shù)據(jù)接口中緩存的數(shù)據(jù)過期時(shí),才通過訪問數(shù)據(jù)庫獲取與所述業(yè)務(wù)請(qǐng)求相對(duì)應(yīng)的業(yè)務(wù)數(shù)據(jù)返回至客戶端,因此能夠在一定程度上減少數(shù)據(jù)庫的訪問壓力,縮短業(yè)務(wù)請(qǐng)求的響應(yīng)時(shí)間。

      以上可以看出,本實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理方法由于首先接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(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í)現(xiàn)快速高效的訪問通用數(shù)據(jù)接口,緩解高并發(fā)場(chǎng)景下互聯(lián)網(wǎng)投融資平臺(tái)服務(wù)層和數(shù)據(jù)庫的壓力,縮短了業(yè)務(wù)請(qǐng)求的響應(yīng)時(shí)間,提升了用戶體驗(yàn)。

      圖2是本發(fā)明實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)的示意性框圖,該系統(tǒng)用于運(yùn)行圖1所示實(shí)施例提供的方法。為了便于說明僅僅示出了與本實(shí)施例相關(guān)的部分。

      參見圖2所示,本實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng),包括:

      接口路由模塊1,用于接收客戶端發(fā)送的業(yè)務(wù)請(qǐng)求,并根據(jù)所述業(yè)務(wù)請(qǐng)求的信息頭中攜帶的功能編號(hào)將所述業(yè)務(wù)請(qǐng)求分發(fā)到對(duì)應(yīng)的數(shù)據(jù)接口;

      緩存數(shù)據(jù)接口判斷模塊2,用于判斷所述數(shù)據(jù)接口是否為緩存數(shù)據(jù)的數(shù)據(jù)接口;

      緩存數(shù)據(jù)過期判斷模塊3,用于若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期;

      緩存數(shù)據(jù)獲取模塊4,用于若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)未過期,則讀取數(shù)據(jù)接口中的緩存數(shù)據(jù),并將所述緩存數(shù)據(jù)返回至所述客戶端。

      可選的,所述基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)還包括:

      接口訪問頻率統(tǒng)計(jì)模塊5,用于統(tǒng)計(jì)各個(gè)數(shù)據(jù)接口的訪問頻率,并判斷所述數(shù)據(jù)接口的訪問頻率是否符合預(yù)設(shè)條件;

      數(shù)據(jù)接口緩存模塊6,用于若所述數(shù)據(jù)接口的訪問頻率符合預(yù)設(shè)條件,則將所述數(shù)據(jù)接口設(shè)置為緩存數(shù)據(jù)的數(shù)據(jù)接口,在所述數(shù)據(jù)接口中緩存數(shù)據(jù)庫查詢結(jié)果;

      定時(shí)更新模塊7,用于將所述數(shù)據(jù)接口添加至數(shù)據(jù)更新任務(wù)列表中,并為所述數(shù)據(jù)接口設(shè)置相應(yīng)的數(shù)據(jù)更新頻率,保證所述數(shù)據(jù)接口中的緩存數(shù)據(jù)在需要進(jìn)行實(shí)時(shí)更新的時(shí)間段內(nèi)定時(shí)更新。

      可選的,所述基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)還包括:

      訪問時(shí)間更新模塊8,用于更新所述數(shù)據(jù)接口的訪問時(shí)間;

      定時(shí)更新任務(wù)管理模塊9,用于實(shí)時(shí)統(tǒng)計(jì)更新后的所述數(shù)據(jù)接口的訪問時(shí)間與業(yè)務(wù)系統(tǒng)當(dāng)前時(shí)間之間的第二差值,判斷所述第二差值是否大于預(yù)設(shè)時(shí)間值,若大于預(yù)設(shè)時(shí)間值,則將所述數(shù)據(jù)接口從所述數(shù)據(jù)更新任務(wù)列表中刪除。

      可選的,所述基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)還包括:

      校驗(yàn)?zāi)K10,用于若所述數(shù)據(jù)接口中的緩存數(shù)據(jù)已過期,則對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行token校驗(yàn);

      接口服務(wù)模塊11,用于若校驗(yàn)通過,則通過接口服務(wù)訪問業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫,以根據(jù)所述業(yè)務(wù)請(qǐng)求更新所述數(shù)據(jù)接口的緩存數(shù)據(jù),并將更新后的緩存數(shù)據(jù)返回至所述客戶端。

      可選的,所述緩存數(shù)據(jù)過期判斷模塊3具體用于:

      若所述數(shù)據(jù)接口為緩存數(shù)據(jù)的數(shù)據(jù)接口,則獲取所述數(shù)據(jù)接口此次接收到業(yè)務(wù)請(qǐng)求的第一時(shí)間和所述數(shù)據(jù)接口前次接收到業(yè)務(wù)請(qǐng)求的第二時(shí)間,根據(jù)所述第一時(shí)間和第二時(shí)間之間的第一差值判斷所述數(shù)據(jù)接口中的緩存數(shù)據(jù)是否過期。

      需要說明的是,本發(fā)明實(shí)施例提供的上述系統(tǒng)中的各個(gè)模塊,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,其帶來的技術(shù)效果與本發(fā)明方法實(shí)施例相同,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。

      因此,可以看出本實(shí)施例提供的一種基于數(shù)據(jù)緩存的業(yè)務(wù)請(qǐng)求處理系統(tǒng)同樣可以實(shí)現(xiàn)快速高效的訪問通用數(shù)據(jù)接口,緩解高并發(fā)場(chǎng)景下互聯(lián)網(wǎng)投融資平臺(tái)服務(wù)層和數(shù)據(jù)庫的壓力,縮短了業(yè)務(wù)請(qǐng)求的響應(yīng)時(shí)間,提升了用戶體驗(yàn)。

      以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1