本發(fā)明涉及地理信息。更具體地,本發(fā)明涉及一種影像切片服務(wù)的緩存調(diào)度方法及系統(tǒng)。
背景技術(shù):
1、隨著信息技術(shù)與地理信息系統(tǒng)的發(fā)展,在電子設(shè)備上加載地圖時(shí),一般是通過調(diào)用該地圖的多個(gè)地圖切片,以在電子設(shè)備的顯示界面上加載出完整的地圖數(shù)據(jù)。其中,地圖緩存是一個(gè)包含了不同比例尺下整個(gè)地圖范圍的地圖切片的目錄,基于緩存服務(wù),可以利用靜態(tài)圖片快速的提供地圖,從而提高用戶體驗(yàn)感。
2、現(xiàn)有的切片加載多數(shù)基于動(dòng)態(tài)切片和緩存實(shí)現(xiàn),然而在一些場(chǎng)景中,靜態(tài)地圖切片具有更明顯的優(yōu)勢(shì)。然而,在使用靜態(tài)地圖切片時(shí),處于高并發(fā)情況下(突然涌現(xiàn)出大量的請(qǐng)求)仍然可能會(huì)出現(xiàn)切片出圖慢的情況,從而導(dǎo)致地圖加載的速度變慢,影響用戶的使用體驗(yàn)。
技術(shù)實(shí)現(xiàn)思路
1、為解決上述在高并發(fā)情況下靜態(tài)切片出圖慢的技術(shù)問題,本發(fā)明在如下的多個(gè)方面中提供方案。
2、在第一方面中,本發(fā)明提供了一種影像切片服務(wù)的緩存調(diào)度方法,包括:
3、響應(yīng)于接收到獲取地圖切片的請(qǐng)求,根據(jù)所述請(qǐng)求中攜帶的切片層級(jí)、切片行號(hào)和切片列號(hào)確定切片四個(gè)角的經(jīng)緯度范圍;
4、判斷切片四個(gè)角的經(jīng)緯度范圍是否與所請(qǐng)求的圖層范圍匹配,若是,則從原有緩存服務(wù)和/或新建的緩存服務(wù)中返回對(duì)應(yīng)的切片;若否,則返回報(bào)錯(cuò)提示。
5、進(jìn)一步地,從原有緩存服務(wù)和/或新建的緩存服務(wù)中返回對(duì)應(yīng)的切片,包括:判斷當(dāng)前是否有空閑的緩存服務(wù),若有,則從當(dāng)前空閑的緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)的切片;若無,則建立新緩存服務(wù),從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片。
6、進(jìn)一步地,判斷當(dāng)前是否有空閑的緩存服務(wù),包括:判斷切片緩存的負(fù)載是否達(dá)到預(yù)設(shè)的閾值,若是,則無空閑的緩存服務(wù);若否,則有空閑的緩存服務(wù)。
7、進(jìn)一步地,從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片,包括:優(yōu)先將請(qǐng)求分配至所述原有緩存服務(wù)中,剩余部分再分配至所述新緩存服務(wù)中。
8、進(jìn)一步地,從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片,包括:動(dòng)態(tài)分配請(qǐng)求至所述原有緩存服務(wù)和所述新緩存服務(wù)中,以使所述原有緩存服務(wù)的負(fù)載與所述新緩存服務(wù)的負(fù)載的差異最小。
9、進(jìn)一步地,根據(jù)所述請(qǐng)求中攜帶的切片層級(jí)、切片行號(hào)和切片列號(hào)確定切片四個(gè)角的經(jīng)緯度范圍,包括:
10、
11、式中,lon_min表示切片的最小經(jīng)度,lon_max表示切片的最大經(jīng)度,lat_min表示切片的最小緯度,lat_max表示切片的最大緯度,z表示切片層級(jí),x表示切片行號(hào),y表示切片列號(hào)。
12、進(jìn)一步地,判斷切片四個(gè)角的經(jīng)緯度范圍是否與所請(qǐng)求的圖層范圍匹配,包括:響應(yīng)于切片四個(gè)角的經(jīng)緯度范圍和圖層范圍均對(duì)應(yīng)為矩形范圍,則判斷切片范圍對(duì)應(yīng)的矩形與圖層范圍對(duì)應(yīng)的矩形是否存在相交或包含關(guān)系,若是,則切片四個(gè)角的經(jīng)緯度范圍與所請(qǐng)求的圖層范圍匹配;若否,則切片四個(gè)角的經(jīng)緯度范圍與所請(qǐng)求的圖層范圍不匹配。
13、進(jìn)一步地,判斷切片范圍對(duì)應(yīng)的矩形與圖層范圍對(duì)應(yīng)的矩形是否存在相交或包含關(guān)系,包括:
14、響應(yīng)于滿足預(yù)設(shè)條件,切片范圍對(duì)應(yīng)的矩形與圖層范圍對(duì)應(yīng)的矩形存在相交或包含關(guān)系;所述預(yù)設(shè)條件為:
15、
16、式中,x1、y1分別為切片范圍對(duì)應(yīng)的矩形的一個(gè)對(duì)角頂點(diǎn)的橫坐標(biāo)和縱坐標(biāo),x2、y2分別為切片范圍對(duì)應(yīng)的矩形的另一個(gè)對(duì)角頂點(diǎn)的橫坐標(biāo)和縱坐標(biāo),x3、y3分別為圖層范圍對(duì)應(yīng)的矩形的一個(gè)對(duì)角頂點(diǎn)的橫坐標(biāo)和縱坐標(biāo),x4、y4分別為圖層范圍對(duì)應(yīng)的矩形的另一個(gè)對(duì)角頂點(diǎn)的橫坐標(biāo)和縱坐標(biāo)。
17、進(jìn)一步地,本發(fā)明的方法還包括:根據(jù)請(qǐng)求中的圖層id確定所述圖層范圍。
18、在第二方面中,本發(fā)明提供了一種影像切片服務(wù)的緩存調(diào)度系統(tǒng),包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序指令,當(dāng)所述計(jì)算機(jī)程序指令被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)根據(jù)第一方面中所述的一種影像切片服務(wù)的緩存調(diào)度方法。
19、本發(fā)明的有益效果在于:本發(fā)明的方法通過在查找切片前對(duì)切片范圍進(jìn)行判定,能夠減少無效的訪問和操作,從而提高了獲取地圖切片的效率,進(jìn)而提高了地圖加載的效率。進(jìn)一步地,通過在請(qǐng)求數(shù)量超過預(yù)設(shè)的閾值時(shí)建立新的緩存服務(wù),并從新的緩存服務(wù)并從中返回切片,避免了切片服務(wù)性能下降,從而減少了等待出圖的時(shí)間,進(jìn)而提高了獲取地圖切片的效率。
1.一種影像切片服務(wù)的緩存調(diào)度方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,從原有緩存服務(wù)和/或新建的緩存服務(wù)中返回對(duì)應(yīng)的切片,包括:判斷當(dāng)前是否有空閑的緩存服務(wù),若有,則從當(dāng)前空閑的緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)的切片;若無,則建立新緩存服務(wù),從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片。
3.根據(jù)權(quán)利要求2所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,判斷當(dāng)前是否有空閑的緩存服務(wù),包括:判斷切片緩存的負(fù)載是否達(dá)到預(yù)設(shè)的閾值,若是,則無空閑的緩存服務(wù);若否,則有空閑的緩存服務(wù)。
4.根據(jù)權(quán)利要求2或3所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片,包括:優(yōu)先將請(qǐng)求分配至所述原有緩存服務(wù)中,剩余部分再分配至所述新緩存服務(wù)中。
5.根據(jù)權(quán)利要求2或3所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,從所述新緩存服務(wù)以及原有緩存服務(wù)中按照切片層級(jí)、切片行號(hào)和切片列號(hào)返回對(duì)應(yīng)切片,包括:動(dòng)態(tài)分配請(qǐng)求至所述原有緩存服務(wù)和所述新緩存服務(wù)中,以使所述原有緩存服務(wù)的負(fù)載與所述新緩存服務(wù)的負(fù)載的差異最小。
6.根據(jù)權(quán)利要求1所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,根據(jù)所述請(qǐng)求中攜帶的切片層級(jí)、切片行號(hào)和切片列號(hào)確定切片四個(gè)角的經(jīng)緯度范圍,包括:
7.根據(jù)權(quán)利要求1所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,判斷切片四個(gè)角的經(jīng)緯度范圍是否與所請(qǐng)求的圖層范圍匹配,包括:響應(yīng)于切片四個(gè)角的經(jīng)緯度范圍和圖層范圍均對(duì)應(yīng)為矩形范圍,則判斷切片范圍對(duì)應(yīng)的矩形與圖層范圍對(duì)應(yīng)的矩形是否存在相交或包含關(guān)系,若是,則切片四個(gè)角的經(jīng)緯度范圍與所請(qǐng)求的圖層范圍匹配;若否,則切片四個(gè)角的經(jīng)緯度范圍與所請(qǐng)求的圖層范圍不匹配。
8.根據(jù)權(quán)利要求7所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,判斷切片范圍對(duì)應(yīng)的矩形與圖層范圍對(duì)應(yīng)的矩形是否存在相交或包含關(guān)系,包括:
9.根據(jù)權(quán)利要求1所述的影像切片服務(wù)的緩存調(diào)度方法,其特征在于,還包括:根據(jù)請(qǐng)求中的圖層id確定所述圖層范圍。
10.一種影像切片服務(wù)的緩存調(diào)度系統(tǒng),其特征在于,包括處理器和存儲(chǔ)器,所述存儲(chǔ)器存儲(chǔ)有計(jì)算機(jī)程序指令,當(dāng)所述計(jì)算機(jī)程序指令被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)根據(jù)權(quán)利要求1-9所述的一種影像切片服務(wù)的緩存調(diào)度方法。