krpano上(shàng)傳多(duō)張大(dà)圖時(shí)切圖過程無響應分(fēn)析
随著(zhe)互聯網技(jì)術(shù)及基礎設施的(de)發展,很(hěn)多(duō)以前想想都(dōu)覺得(de)奢侈的(de)場(chǎβng)景應用(yòng)現(xiàn)在都(dōu)變得(de)非常日(rì)常了(le),比如(rú)視(shì)頻(pín)直播、短(duǎn)視(shì)頻(píλn)、VR全景等等。就(jiù)VR全景而已,最近(jìn)今年(nián)在國(guó)內(nèi)的(de)應用(yòng)非常火(huǒ),比如(rú)VR看(kàn)房(&fáng)、VR遊覽景區(qū)等等。
在國(guó)內(nèi),很(hěn)多(duō)VR全景産品的(de)處理(lǐ)引擎都(dōu)是(shì)基于外(wài)國(g'uó)友(yǒu)人(rén)寫的(de)krpano這(zhè)套軟件(jiàn),然後在應用(yòng)層面使用(yòng)不(bù)同的(de)開(kāi)發技(jì)能(n£éng)與工(gōng)具加上(shàng)擴展的(de)功能(néng)模塊。就(jiù)目前我們參與過的(de)VR項目,底層核心部分(fēn)的(de)處理↔(lǐ)引擎都(dōu)是(shì)采用(yòng)krpano。基于krpano的(de)全景項目我們開(kāi)發了(le)數(shù)個(gè≈),目前就(jiù)遇到(dào)了(le)一(yī)個(gè)極端情況下(xià)的(de)問(wèn)題。
x01問(wèn)題
用(yòng)戶反饋:一(yī)次性上(shàng)傳20張20MB左右圖片;上(shàng)傳采用(yòng)阿裡(lǐ)雲OSS,是(shì)沒有(yǒu)問(wèn)題的≥(de),然而上(shàng)傳成功後在等待切圖的(de)時(shí)候,一(yī)直卡住不(bù)動了(le)。而上(s$hàng)傳較少(shǎo)的(de)圖片(哪怕圖片超過100MB)或者較多(duō)圖片每張圖片很(hěn)小(xiǎo)都(dōu) 可(kě)以上(shàng)傳并切圖完成。
x02分(fēn)析
到(dào)了(le)切圖流程說(shuō)明(míng)圖片肯定是(shì)上(shàng)傳成功的(de),因為(wèi)采用∏(yòng)第三方存儲的(de)架構項目,全景圖片處理(lǐ)的(de)基本流程是(shì):上(shàng)傳原圖到(dào)阿裡(lǐ)雲OSS–>服★務端從(cóng)阿裡(lǐ)雲OSS通(tōng)過CDN獲取圖片(也(yě)可(kě)以直接一(yī)步到(dào)位傳到(dào)服務器(qì)本地(dì))– >krpano切圖并在服務器(qì)臨時(shí)存儲或永久存儲–>切圖生(shēng)成的(de)圖片上(shàng)傳到(dào)OSS,并在并在數(shù)據庫λ記錄各個(gè)圖片路(lù)徑–>通(tōng)過krpano算(suàn)法組合圖片生(shēng)成我們看(kàn)到(dào↔)的(de)全景。
于是(shì),圖片上(shàng)傳接口肯定是(shì)正常的(de),不(bù)管圖片是(shì)直接上(shàng)傳到(dào)服務器(qì)本地÷(dì)還(hái)是(shì)先上(shàng)傳到(dào)阿裡(lǐ)OSS這(zhè)類第三方存儲雲平台;而且切圖接口返回也(yě)是(sh∞ì)正常的(de),也(yě)就(jiù)是(shì)說(shuō)明(míng)切圖流程已經開(kāi)始執行(xíng)了(le);再者開(kāi)發的(de)時(shí•)候由于考慮這(zhè)種場(chǎng)景下(xià)上(shàng)傳及切圖處理(lǐ)時(shí)間(jiān)肯定不(bù)會(huì↔)太短(duǎn),所以做(zuò)了(le)一(yī)個(gè)心跳(tiào)處理(lǐ),而且該接口也(yě)是(shì)正常的(de)。

掃二維碼與項目經理(lǐ)溝通(tōng)
我們在微(wēi)信上(shàng)24小(xiǎo)時(shí)期待你(nǐ)的(de)聲音(yīn)
解答(dá)本文(wén)疑問(wèn)/技(jì)術(shù)咨詢/運營咨詢/技(jì)術(shù)建$議(yì)/互聯網交流