[發(fā)明專(zhuān)利]接口訪問(wèn)請(qǐng)求處理方法及存儲(chǔ)介質(zhì)在審
| 申請(qǐng)?zhí)枺?/td> | 202110996901.0 | 申請(qǐng)日: | 2021-08-27 |
| 公開(kāi)(公告)號(hào): | CN113886099A | 公開(kāi)(公告)日: | 2022-01-04 |
| 發(fā)明(設(shè)計(jì))人: | 黃培桀 | 申請(qǐng)(專(zhuān)利權(quán))人: | 北京房江湖科技有限公司 |
| 主分類(lèi)號(hào): | G06F9/54 | 分類(lèi)號(hào): | G06F9/54;G06F9/448 |
| 代理公司: | 北京路浩知識(shí)產(chǎn)權(quán)代理有限公司 11002 | 代理人: | 謝志超 |
| 地址: | 101309 北京市*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 接口 訪問(wèn) 請(qǐng)求 處理 方法 存儲(chǔ) 介質(zhì) | ||
本發(fā)明提供一種接口訪問(wèn)請(qǐng)求處理方法及存儲(chǔ)介質(zhì),該方法包括:接收第一接口訪問(wèn)請(qǐng)求,根據(jù)第一接口訪問(wèn)請(qǐng)求判斷當(dāng)前是否存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求;響應(yīng)于當(dāng)前存在尚未返回所述請(qǐng)求結(jié)果的第二接口訪問(wèn)請(qǐng)求,阻塞第一接口訪問(wèn)請(qǐng)求;響應(yīng)于第二接口訪問(wèn)請(qǐng)求的請(qǐng)求結(jié)果返回,將請(qǐng)求結(jié)果發(fā)送給第二接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第二請(qǐng)求方,復(fù)制請(qǐng)求結(jié)果,將復(fù)制的請(qǐng)求結(jié)果發(fā)送給第一接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第一請(qǐng)求方。本發(fā)明提供的接口訪問(wèn)請(qǐng)求處理方法及存儲(chǔ)介質(zhì),通過(guò)在判斷有等同請(qǐng)求尚未返回請(qǐng)求結(jié)果時(shí),對(duì)新請(qǐng)求阻塞處理,在請(qǐng)求結(jié)果返回后,復(fù)制請(qǐng)求結(jié)果發(fā)送到新請(qǐng)求的請(qǐng)求方,有效地實(shí)現(xiàn)了高并發(fā)優(yōu)化,減輕了服務(wù)器接口處理壓力,并避免了緩存依賴。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種接口訪問(wèn)請(qǐng)求處理方法及存儲(chǔ)介質(zhì)。
背景技術(shù)
當(dāng)大量重復(fù)請(qǐng)求同時(shí)訪問(wèn)服務(wù)器,容易導(dǎo)致本服務(wù)或下游服務(wù)(此時(shí)本服務(wù)只做轉(zhuǎn)發(fā)處理)流量過(guò)大引起系統(tǒng)性能問(wèn)題。傳統(tǒng)的解決方式,需要開(kāi)發(fā)人員主動(dòng)判斷服務(wù)器接口是否存在大量并發(fā)的使用場(chǎng)景,根據(jù)接口具體情況,使用本地緩存或分布式緩存優(yōu)化接口,外部請(qǐng)求訪問(wèn)服務(wù)器接口時(shí),判斷是否存在有效期內(nèi)的緩存,如有,則獲取緩存中的數(shù)據(jù)作為接口返回值,如沒(méi)有則實(shí)際獲取數(shù)據(jù)返回,同時(shí)將返回值存儲(chǔ)在緩存中供下次訪問(wèn)接口時(shí)使用。這種方式的缺點(diǎn)是需要開(kāi)發(fā)人員在方案設(shè)計(jì)階段提前評(píng)估接口的壓力情況,專(zhuān)門(mén)編碼實(shí)現(xiàn)緩存的功能才能支持高并發(fā)的情況,如果開(kāi)發(fā)人員未評(píng)估到位則可能出現(xiàn)導(dǎo)致性能問(wèn)題。另外,一般集群服務(wù)使用分布式緩存提供緩存服務(wù)器,增加中間件依賴,增加服務(wù)的復(fù)雜度。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)存在的問(wèn)題,本發(fā)明提供一種接口訪問(wèn)請(qǐng)求處理方法及存儲(chǔ)介質(zhì)。
本發(fā)明提供一種接口訪問(wèn)請(qǐng)求處理方法,包括:接收第一接口訪問(wèn)請(qǐng)求,根據(jù)所述第一接口訪問(wèn)請(qǐng)求判斷當(dāng)前是否存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求;響應(yīng)于當(dāng)前存在尚未返回所述請(qǐng)求結(jié)果的第二接口訪問(wèn)請(qǐng)求,則阻塞所述第一接口訪問(wèn)請(qǐng)求;響應(yīng)于所述第二接口訪問(wèn)請(qǐng)求的所述請(qǐng)求結(jié)果返回,將所述請(qǐng)求結(jié)果發(fā)送給所述第二接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第二請(qǐng)求方,并復(fù)制所述請(qǐng)求結(jié)果,將復(fù)制的所述請(qǐng)求結(jié)果發(fā)送給所述第一接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第一請(qǐng)求方。
根據(jù)本發(fā)明提供的一種接口訪問(wèn)請(qǐng)求處理方法,所述判斷當(dāng)前是否存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求,具體包括:根據(jù)預(yù)設(shè)的關(guān)鍵字生成方法,生成相應(yīng)接口訪問(wèn)請(qǐng)求的所述關(guān)鍵字;判斷所述關(guān)鍵字是否存在于監(jiān)控列表中,若是,則表示當(dāng)前存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求;若否,則表示當(dāng)前不存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求。
根據(jù)本發(fā)明提供的一種接口訪問(wèn)請(qǐng)求處理方法,響應(yīng)于當(dāng)前存在尚未返回所述請(qǐng)求結(jié)果的第二接口訪問(wèn)請(qǐng)求,則在所述接收第一接口訪問(wèn)請(qǐng)求之前,所述方法還包括:接收所述第二接口訪問(wèn)請(qǐng)求,根據(jù)所述第二接口訪問(wèn)請(qǐng)求判斷當(dāng)前是否存在尚未返回請(qǐng)求結(jié)果的等同請(qǐng)求;若否,則將所述第二接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的關(guān)鍵字存儲(chǔ)于所述監(jiān)控列表中,注冊(cè)第二監(jiān)聽(tīng)回調(diào)函數(shù)到所述監(jiān)控列表中并與所述關(guān)鍵字對(duì)應(yīng)存儲(chǔ);其中,所述第二監(jiān)聽(tīng)回調(diào)函數(shù)為空函數(shù)。
根據(jù)本發(fā)明提供的一種接口訪問(wèn)請(qǐng)求處理方法,所述響應(yīng)于當(dāng)前存在尚未返回所述請(qǐng)求結(jié)果的第二接口訪問(wèn)請(qǐng)求,則阻塞所述第一接口訪問(wèn)請(qǐng)求,具體包括:響應(yīng)于當(dāng)前存在尚未返回所述請(qǐng)求結(jié)果的第二接口訪問(wèn)請(qǐng)求,注冊(cè)與所述第一接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第一監(jiān)聽(tīng)回調(diào)函數(shù)到所述監(jiān)控列表中并與所述關(guān)鍵字對(duì)應(yīng)存儲(chǔ),阻塞所述第一接口訪問(wèn)請(qǐng)求;其中,所述第一監(jiān)聽(tīng)回調(diào)函數(shù)用于復(fù)制所述請(qǐng)求結(jié)果。
根據(jù)本發(fā)明提供的一種接口訪問(wèn)請(qǐng)求處理方法,所述響應(yīng)于所述第二接口訪問(wèn)請(qǐng)求的所述請(qǐng)求結(jié)果返回,將所述請(qǐng)求結(jié)果發(fā)送給所述第二接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第二請(qǐng)求方,并復(fù)制所述請(qǐng)求結(jié)果,將復(fù)制的所述請(qǐng)求結(jié)果發(fā)送給所述第一接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第一請(qǐng)求方,具體包括:響應(yīng)于所述第二接口訪問(wèn)請(qǐng)求的所述請(qǐng)求結(jié)果返回,觸發(fā)所述第二監(jiān)聽(tīng)回調(diào)函數(shù)及所述第一監(jiān)聽(tīng)回調(diào)函數(shù);所述第二監(jiān)聽(tīng)回調(diào)函數(shù)被觸發(fā)后,將所述請(qǐng)求結(jié)果發(fā)送給所述第二接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第二請(qǐng)求方;所述第一監(jiān)聽(tīng)回調(diào)函數(shù)被觸發(fā)后,復(fù)制所述請(qǐng)求結(jié)果,將復(fù)制的所述請(qǐng)求結(jié)果發(fā)送給所述第一接口訪問(wèn)請(qǐng)求對(duì)應(yīng)的第一請(qǐng)求方。
該專(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/202110996901.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 存儲(chǔ)器訪問(wèn)調(diào)度裝置、調(diào)度方法與存儲(chǔ)器訪問(wèn)控制系統(tǒng)
- 一種限制用戶訪問(wèn)的方法和裝置
- 一種訪問(wèn)信息提供方法及系統(tǒng)
- 數(shù)據(jù)訪問(wèn)權(quán)限的控制方法及裝置
- 基于智能家居系統(tǒng)的訪問(wèn)授權(quán)方法、裝置及設(shè)備
- 網(wǎng)站訪問(wèn)請(qǐng)求的動(dòng)態(tài)調(diào)度方法及裝置
- 基于訪問(wèn)頻率的監(jiān)測(cè)方法、裝置、設(shè)備和計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 訪問(wèn)憑證驗(yàn)證方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 一種應(yīng)用訪問(wèn)控制方法、系統(tǒng)和介質(zhì)
- 異常訪問(wèn)行為的檢測(cè)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)





