專(zhuān)利名稱(chēng):一種查詢(xún)圖片信息的方法、系統(tǒng)和圖片狀態(tài)服務(wù)器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無(wú)線互聯(lián)網(wǎng)領(lǐng)域,特別涉及一種查詢(xún)圖片信息的方法、系統(tǒng)和圖片狀態(tài)服務(wù)器。
背景技術(shù):
隨著無(wú)線互聯(lián)網(wǎng)和智能終端的發(fā)展,越來(lái)越多的人開(kāi)始使用移動(dòng)終端進(jìn)行互聯(lián)網(wǎng)的訪問(wèn)。用戶(hù)通過(guò)移動(dòng)終端訪問(wèn)互聯(lián)網(wǎng)時(shí),無(wú)線搜索引擎內(nèi)部會(huì)根據(jù)用戶(hù)訪問(wèn)的網(wǎng)址,對(duì)網(wǎng)址對(duì)應(yīng)的網(wǎng)頁(yè)進(jìn)行轉(zhuǎn)碼,將原始網(wǎng)頁(yè)進(jìn)行重新排版,并將網(wǎng)頁(yè)中的圖片進(jìn)行縮略處理,生成適合在移動(dòng)終端上顯示的網(wǎng)頁(yè)并傳輸?shù)揭苿?dòng)終端供用戶(hù)瀏覽?,F(xiàn)有技術(shù)在原始網(wǎng)頁(yè)的轉(zhuǎn)碼時(shí),對(duì)于網(wǎng)頁(yè)中的圖片首先會(huì)判斷該圖片是否進(jìn)行過(guò)縮略處理,判斷過(guò)程如下圖片狀態(tài)服務(wù)器會(huì)對(duì)圖片的網(wǎng)絡(luò)地址利用三個(gè)哈希算法函數(shù)分別算出三個(gè)偏移量,在每個(gè)偏移量和計(jì)算它的哈希算法對(duì)應(yīng)的bit數(shù)組中,判斷以該偏移量作為數(shù)組成員下標(biāo)所對(duì)應(yīng)的數(shù)組成員是否為1,如果所對(duì)應(yīng)的三個(gè)數(shù)組成員均為1,則表示該圖片已經(jīng)縮略過(guò),如果有任何一個(gè)數(shù)組成員為0,則表示該圖片沒(méi)有縮略過(guò),因此對(duì)這個(gè)圖片進(jìn)行處理并將對(duì)應(yīng)的bit數(shù)組中以偏移量作為數(shù)組下標(biāo)的數(shù)組成員從O重置為I。現(xiàn)有技術(shù)至少存在以下問(wèn)題現(xiàn)有技術(shù)中不同的網(wǎng)址通過(guò)哈希算法計(jì)算后有可能得到相同的偏移量,即對(duì)應(yīng)到相應(yīng)的bit數(shù)組中會(huì)判斷同一個(gè)數(shù)組成員是否為1,判斷的第一個(gè)圖片網(wǎng)址后對(duì)應(yīng)的這個(gè)值,在判斷第二個(gè)圖片網(wǎng)址時(shí)該值已經(jīng)是1,造成了哈希沖突即無(wú)法確定第二個(gè)圖片網(wǎng)址所對(duì)應(yīng)的值是O或1,導(dǎo)致本來(lái)沒(méi)有縮略過(guò)的圖片地址被誤判為縮略過(guò),當(dāng)用戶(hù)瀏覽時(shí)該圖片不能得到正常展示。
發(fā)明內(nèi)容
為了解決無(wú)線搜索引擎查詢(xún)圖片狀態(tài)時(shí)對(duì)圖片的縮略誤判的問(wèn)題,本發(fā)明實(shí)施例提供了一種查詢(xún)圖片信息的方法、系統(tǒng)和圖片狀態(tài)服務(wù)器。所述技術(shù)方案如下本發(fā)明實(shí)施例提出了一種查詢(xún)圖片信息的方法,包括設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;獲取圖片的網(wǎng)絡(luò)地址;根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。作為上述技術(shù)方案的優(yōu)選,所述根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,具體包括根據(jù)所述圖片的網(wǎng)絡(luò)地址,使用消息摘要算法第五版MD5算法計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。作為上述技術(shù)方案的優(yōu)選,所述根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息,包括根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,確定對(duì)應(yīng)的桶指針;查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配;若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息;若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并對(duì)該圖片進(jìn)行縮略處理;若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。作為上述技術(shù)方案的優(yōu)選,所述若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并對(duì)該圖片進(jìn)行縮略處理之后,還包括在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。作為上述技術(shù)方案的優(yōu)選,所述若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理之后,還包括在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。作為上述技術(shù)方案的優(yōu)選,所述方法還包括保存所述圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。本發(fā)明實(shí)施例還提出了一種圖片狀態(tài)服務(wù)器,包括設(shè)置模塊,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;獲取模塊,用于獲取圖片的網(wǎng)絡(luò)地址;計(jì)算模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;查詢(xún)模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。作為上述技術(shù)方案的優(yōu)選,所述計(jì)算模塊,具體用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,使用消息摘要算法第五版MD5算法計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。作為上述技術(shù)方案的優(yōu)選,所述查詢(xún)模塊,包括確定單元,用于根據(jù)所述圖片的關(guān)鍵值,確定對(duì)應(yīng)的桶指針;查詢(xún)單元,用于查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配;返回單元,用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息;或者,
用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器進(jìn)行縮略處理;或者,用于若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器,根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。作為上述技術(shù)方案的優(yōu)選,所述圖片狀態(tài)服務(wù)器還包括第一保存模塊,用于在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。作為上述技術(shù)方案的優(yōu)選,所述圖片狀態(tài)服務(wù)器還包括第二保存模塊,用于在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。作為上述技術(shù)方案的優(yōu)選,所述圖片狀態(tài)服務(wù)器還包括處理模塊,用于保存所述圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。本發(fā)明實(shí)施例還提出了一種查詢(xún)圖片信息的系統(tǒng),包括圖片狀態(tài)服務(wù)器;其特征在于,所述圖片狀態(tài)服務(wù)器包括設(shè)置模塊,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;獲取模塊,用于獲取圖片的網(wǎng)絡(luò)地址;計(jì)算模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;查詢(xún)模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。作為上述技術(shù)方案的優(yōu)選,所述系統(tǒng)還包括圖片縮略服務(wù)器用于對(duì)圖片進(jìn)行縮略處理,以適應(yīng)移動(dòng)終端設(shè)備進(jìn)行瀏覽操作;圖片存儲(chǔ)服務(wù)器用于保存縮略處理后的圖片。本發(fā)明實(shí)施例提供的技術(shù)方案帶來(lái)的有益效果是通過(guò)對(duì)獲取的圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,得到唯一與其網(wǎng)絡(luò)地址對(duì)應(yīng)的關(guān)鍵值,通過(guò)對(duì)該關(guān)鍵值在服務(wù)器中進(jìn)行匹配,查詢(xún)服務(wù)器中該圖片的狀態(tài)信息,避免了現(xiàn)有技術(shù)中查看圖片狀態(tài)時(shí)會(huì)產(chǎn)生哈希沖突,導(dǎo)致獲得錯(cuò)誤信息的問(wèn)題。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明實(shí)施例1中提供的查詢(xún)圖片信息的方法流程示意圖2是本發(fā)明實(shí)施例2中提供的查詢(xún)圖片信息的方法流程示意圖;圖3是本發(fā)明實(shí)施例3中提供的圖片狀態(tài)服務(wù)器的結(jié)構(gòu)示意圖;圖4是本發(fā)明實(shí)施例4中提供的查詢(xún)圖片信息的系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地狀態(tài)描述。實(shí)施例1本發(fā)明實(shí)施例1提出了一種查詢(xún)圖片信息的方法,其流程如圖1所示,包括步驟101 :設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;步驟102 :獲取圖片的網(wǎng)絡(luò)地址;步驟103 :根據(jù)所述 圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;步驟104 :根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。本發(fā)明實(shí)施例通過(guò)對(duì)獲取的圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,得到唯一與其網(wǎng)絡(luò)地址對(duì)應(yīng)的關(guān)鍵值,通過(guò)對(duì)該關(guān)鍵值在服務(wù)器中進(jìn)行匹配,查詢(xún)服務(wù)器中該圖片的狀態(tài)信息,避免了現(xiàn)有技術(shù)中查看圖片狀態(tài)時(shí)會(huì)產(chǎn)生哈希沖突,導(dǎo)致獲得錯(cuò)誤信息的問(wèn)題。實(shí)施例2本發(fā)明實(shí)施例2提出了一種查詢(xún)圖片信息的方法,其流程如圖2所示,包括步驟201 :設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表。圖片狀態(tài)服務(wù)器的內(nèi)部存儲(chǔ)結(jié)構(gòu)為hash桶的方式,設(shè)置一個(gè)桶指針數(shù)組,該桶指針數(shù)組的下標(biāo)號(hào)從0、1、2……順序編號(hào),編號(hào)即為桶號(hào)。每個(gè)桶號(hào)對(duì)應(yīng)一個(gè)桶指針,每個(gè)桶指針指向一個(gè)鏈表,鏈表中的每個(gè)節(jié)點(diǎn)存儲(chǔ)一張圖片的狀態(tài)信息。節(jié)點(diǎn)中保存的圖片的狀態(tài)信息中至少包括圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片、圖片是否被縮略過(guò)等信息。步驟202 :獲取圖片的網(wǎng)絡(luò)地址。在無(wú)線搜索引擎中,轉(zhuǎn)碼系統(tǒng)在重新排版網(wǎng)頁(yè)時(shí),遇到圖片會(huì)將圖片的網(wǎng)址發(fā)送至圖片狀態(tài)服務(wù)器,查詢(xún)?cè)搱D片的各種信息以及該圖片是否被縮略過(guò)。步驟203 :根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的
關(guān)鍵值。具體的,根據(jù)圖片的網(wǎng)絡(luò)地址,利用MD5算法計(jì)算該圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,得到一個(gè)64位的二進(jìn)制數(shù)值,每一個(gè)圖片的網(wǎng)絡(luò)地址唯一對(duì)應(yīng)一個(gè)關(guān)鍵值。步驟204:根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。步驟204具體為步驟2041 :根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,確定對(duì)應(yīng)的桶指針。具體的,根據(jù)圖片網(wǎng)絡(luò)地址的64位關(guān)鍵值,取該關(guān)鍵值的前26位,將其進(jìn)行數(shù)字制式轉(zhuǎn)換,從二進(jìn)制轉(zhuǎn)換為十進(jìn)制,得到一個(gè)8位的十進(jìn)制數(shù)字。
計(jì)算得到的8位十進(jìn)制數(shù)字作為這個(gè)圖片的網(wǎng)絡(luò)地址在圖片狀態(tài)服務(wù)器中定位可能存儲(chǔ)該圖片的狀態(tài)信息的桶號(hào),即桶指針數(shù)組中桶指針的下標(biāo)。桶的總數(shù)為67108864個(gè),是由2的26次方計(jì)算得來(lái),因此任何一個(gè)圖片的網(wǎng)絡(luò)地址都可以為其匹配到對(duì)應(yīng)的桶指針。若圖片狀態(tài)服務(wù)器未存儲(chǔ)該圖片的狀態(tài)信息,則會(huì)在后續(xù)處理中將這個(gè)圖片的狀態(tài)信息保存在這個(gè)桶號(hào)對(duì)應(yīng)的桶指針?biāo)赶虻逆湵碇械哪骋粋€(gè)節(jié)點(diǎn)上,因此查詢(xún)或者存儲(chǔ)或者更新圖片的狀態(tài)信息時(shí),首先是定位到這個(gè)桶指針。步驟2042 :查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配。查詢(xún)桶指針?biāo)赶虻逆湵?,將獲取到的圖片的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的狀態(tài)信息中的圖片的關(guān)鍵值進(jìn)行匹配。若匹配到則根據(jù)情況執(zhí)行步驟2043或2044,若未匹配到則執(zhí)行步驟2045。步驟2043 :若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息。若在節(jié)點(diǎn)中匹配到和接收到的圖片的網(wǎng)絡(luò)地址相同的關(guān)鍵值,說(shuō)明圖片狀態(tài)服務(wù)器中已經(jīng)保存了這個(gè)圖片的狀態(tài)信息,并且該圖片的狀態(tài)信息中“圖片是否被縮略”字段的狀態(tài)為已被縮略狀態(tài),則將該節(jié)點(diǎn)內(nèi)的圖片的狀態(tài)信息返回給轉(zhuǎn)碼系統(tǒng)。步驟2044:若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并對(duì)該圖片進(jìn)行縮略處理。若在節(jié)點(diǎn)中匹配到和接收到的圖片的網(wǎng)絡(luò)地址相同的關(guān)鍵值,說(shuō)明圖片狀態(tài)服務(wù)器中已經(jīng)保存了這個(gè)圖片的狀態(tài)信息,但是該圖片的狀態(tài)信息中“圖片是否被縮略”字段的狀態(tài)為未被縮略狀態(tài),則將該節(jié)點(diǎn)內(nèi)的圖片的狀態(tài)信息返回給轉(zhuǎn)碼系統(tǒng),并將該圖片的網(wǎng)絡(luò)地址發(fā)送給圖片縮略服務(wù)器,使得圖片縮略服務(wù)器對(duì)該圖片進(jìn)行縮略處理,執(zhí)行步驟205至 207。步驟2045 :若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。若未匹配到則說(shuō)明在圖片狀態(tài)服務(wù)器中并未保存該圖片的任何信息,因此返回給轉(zhuǎn)碼系統(tǒng)未查詢(xún)到的指示信息,并將所述圖片的網(wǎng)絡(luò)地址發(fā)送至圖片縮略服務(wù)器,執(zhí)行步驟 208 至 210。圖片縮略服務(wù)器根據(jù)圖片的網(wǎng)絡(luò)地址獲取所述圖片以及所述圖片的詳細(xì)信息并進(jìn)行縮略處理。圖片的詳細(xì)信息至少包括圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片等信息。步驟205 :圖片縮略服務(wù)器根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片以及所述圖片的詳細(xì)信息,并對(duì)所述圖片進(jìn)行縮略處理。圖片的詳細(xì)信息至少包括圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片等信息。步驟206 :保存縮略后的圖片至圖片存儲(chǔ)服務(wù)器。將縮略后的圖片和圖片的網(wǎng)絡(luò)地址對(duì)應(yīng)成一組數(shù)據(jù),保存至圖片存儲(chǔ)服務(wù)器。步驟207 :在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)中的“圖片是否被縮略”字段設(shè)置為已縮略狀態(tài)。
縮略圖片后,圖片縮略服務(wù)器將圖片的網(wǎng)絡(luò)地址以及獲取到的圖片的詳細(xì)信息返回給圖片狀態(tài)服務(wù)器,根據(jù)圖片的網(wǎng)址對(duì)圖片進(jìn)行步驟202至步驟2041的操作,在圖片狀態(tài)服務(wù)器中找到保存該圖片的節(jié)點(diǎn),并將原始節(jié)點(diǎn)中的圖片的狀態(tài)信息的內(nèi)容,更新為新獲取到的圖片的詳細(xì)信息中的內(nèi)容,即對(duì)圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片等信息進(jìn)行更新。同時(shí)將圖片狀態(tài)信息中的“圖片是否被縮略”字段設(shè)置為圖片已縮略狀態(tài)。步驟208 :圖片縮略服務(wù)器根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片以及所述圖片的詳細(xì)信息,并對(duì)所述圖片進(jìn)行縮略處理。圖片的詳細(xì)信息至少包括圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片等信息。步驟209 :保存縮略后的圖片至圖片存儲(chǔ)服務(wù)器。將縮略后的圖片和圖片的網(wǎng)絡(luò)地址對(duì)應(yīng)成一組數(shù)據(jù),保存至圖片存儲(chǔ)服務(wù)器。步驟210:在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片是否被縮略字段設(shè)置為的狀態(tài)設(shè)置為已縮略的狀態(tài)。圖片縮略服務(wù)器將圖片的網(wǎng)絡(luò)地址以及獲取的圖片的詳細(xì)信息返回給圖片狀態(tài)服務(wù)器,圖片狀態(tài)服務(wù)器根據(jù)圖片的網(wǎng)址對(duì)圖片進(jìn)行步驟202至步驟2041的操作后,在鏈表中并未找到與該圖片的關(guān)鍵值相同的節(jié)點(diǎn),因此為該圖片在當(dāng)前鏈表中申請(qǐng)一個(gè)新的節(jié)點(diǎn),并將圖片縮略服務(wù)器獲取的圖片的詳細(xì)信息的內(nèi)容保存在這個(gè)節(jié)點(diǎn),同時(shí)將這個(gè)節(jié)點(diǎn)中的“圖片是否被縮略”字段設(shè)置為圖片已縮略的狀態(tài),將該節(jié)點(diǎn)插入當(dāng)前鏈表的末尾,該節(jié)點(diǎn)的各種信息作為圖片的狀態(tài)信息進(jìn)行保存。圖片的狀態(tài)信息中至少包括圖片的關(guān)鍵值、圖片的網(wǎng)絡(luò)地址、圖片的原始高度、圖片的原始寬度、是否為垃圾圖片、是否為死鏈圖片、圖片是否被縮略等信息。進(jìn)一步,還可以包括步驟211 :保存圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。在圖片狀態(tài)服務(wù)器進(jìn)行圖片狀態(tài)信息的查詢(xún)過(guò)程中,還可以將每次查詢(xún)圖片的時(shí)間保存在節(jié)點(diǎn)中,每次訪問(wèn)都會(huì)將這個(gè)時(shí)間信息更新一次。對(duì)這個(gè)時(shí)間信息進(jìn)行計(jì)時(shí),當(dāng)超過(guò)預(yù)設(shè)時(shí)間時(shí),仍沒(méi)有對(duì)這個(gè)節(jié)點(diǎn)的圖片信息進(jìn)行再次的訪問(wèn),那么就會(huì)將這個(gè)節(jié)點(diǎn)從鏈表中進(jìn)行刪除,節(jié)約了資源。本發(fā)明實(shí)施例通過(guò)對(duì)獲取的圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,得到唯一與其網(wǎng)絡(luò)地址對(duì)應(yīng)的關(guān)鍵值,這個(gè)關(guān)鍵值唯一對(duì)應(yīng)一個(gè)節(jié)點(diǎn)來(lái)保存圖片的狀態(tài)信息,避免了出現(xiàn)哈希沖突的問(wèn)題,可以準(zhǔn)確的判斷圖片是否被縮略過(guò),同時(shí)提高了用戶(hù)的使用體驗(yàn)。實(shí)施例3本發(fā)明實(shí)施例3提出了一種圖片狀態(tài)服務(wù)器,其結(jié)構(gòu)如圖3所示,包括設(shè)置模塊301,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表。獲取模塊302,用于獲取圖片的網(wǎng)絡(luò)地址。計(jì)算模塊303,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。其中,計(jì)算模塊303具體用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,使用消息摘要算法第五版MD5算法計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。查詢(xún)模塊304,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。其中,查詢(xún)模塊304,具體包括確定單元3041,用于根據(jù)所述圖片的關(guān)鍵值,確定對(duì)應(yīng)的桶指針;查詢(xún)單元3042,用于查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配;返回單元3043,用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息;或者,用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器進(jìn)行縮略處理;或者,用于若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器,根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。其中,圖片狀態(tài)服務(wù)器還可以包括第一保存模塊305,用于在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。第二保存模塊306,用于在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。處理模塊307,用于保存所述圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。本發(fā)明實(shí)施例通過(guò)對(duì)獲取的圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,得到唯一與其網(wǎng)絡(luò)地址對(duì)應(yīng)的關(guān)鍵值,這個(gè)關(guān)鍵值唯一對(duì)應(yīng)一個(gè)節(jié)點(diǎn)來(lái)保存圖片的狀態(tài)信息,避免了出現(xiàn)哈希沖突的問(wèn)題,可以準(zhǔn)確的判斷圖片是否被縮略過(guò),同時(shí)提高了用戶(hù)的使用體驗(yàn)。實(shí)施例4本發(fā)明實(shí)施例4提出了一種查詢(xún)圖片信息的系統(tǒng),其結(jié)構(gòu)如圖4所示,包括圖片狀態(tài)服務(wù)器。其中圖片狀態(tài)服務(wù)器401包括設(shè)置模塊4011,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;獲取模塊4012,用于獲取圖片的網(wǎng)絡(luò)地址;計(jì)算模塊4013,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;查詢(xún)模塊4014,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。
其中,查詢(xún)圖片信息的系統(tǒng)還包括圖片縮略服務(wù)器402 :用于對(duì)圖片進(jìn)行縮略處理,以適應(yīng)移動(dòng)終端設(shè)備進(jìn)行瀏覽操作。圖片存儲(chǔ)服務(wù)器403 :用于保存縮略處理后的圖片。本發(fā)明實(shí)施例通過(guò)對(duì)獲取的圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,得到唯一與其網(wǎng)絡(luò)地址對(duì)應(yīng)的關(guān)鍵值,通過(guò)對(duì)該關(guān)鍵值在服務(wù)器中進(jìn)行匹配,查詢(xún)服務(wù)器中該圖片的狀態(tài)信息,避免了現(xiàn)有技術(shù)中查看圖片狀態(tài)時(shí)會(huì)產(chǎn)生哈希沖突,導(dǎo)致獲得錯(cuò)誤信息的問(wèn)題。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)硬件來(lái)完成,也可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種查詢(xún)圖片信息的方法,其特征在于,所述方法包括 設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表; 獲取圖片的網(wǎng)絡(luò)地址; 根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值; 根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,具體包括 根據(jù)所述圖片的網(wǎng)絡(luò)地址,使用消息摘要算法第五版MD5算法計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息,包括 根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,確定對(duì)應(yīng)的桶指針; 查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配; 若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息; 若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并對(duì)該圖片進(jìn)行縮略處理; 若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并對(duì)該圖片進(jìn)行縮略處理之后,還包括 在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理之后,還包括 在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。
6.根據(jù)權(quán)利要求1-5任一項(xiàng)所述的方法,其特征在于,所述方法還包括 保存所述圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。
7.—種查詢(xún)圖片信息的圖片狀態(tài)服務(wù)器,其特征在于,所述圖片狀態(tài)服務(wù)器包括 設(shè)置模塊,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表; 獲取模塊,用于獲取圖片的網(wǎng)絡(luò)地址; 計(jì)算模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值; 查詢(xún)模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。
8.根據(jù)權(quán)利要求7所述的圖片狀態(tài)服務(wù)器,其特征在于,所述計(jì)算模塊,具體用于 根據(jù)所述圖片的網(wǎng)絡(luò)地址,使用消息摘要算法第五版MD5算法計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值。
9.根據(jù)權(quán)利要求7所述的圖片狀態(tài)服務(wù)器,其特征在于,所述查詢(xún)模塊,包括 確定單元,用于根據(jù)所述圖片的關(guān)鍵值,確定對(duì)應(yīng)的桶指針; 查詢(xún)單元,用于查詢(xún)所述對(duì)應(yīng)的桶指針指向的鏈表,將所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值與鏈表中每一節(jié)點(diǎn)保存的圖片的網(wǎng)絡(luò)地址的關(guān)鍵值進(jìn)行匹配; 返回單元,用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片已被縮略,則返回所述圖片的狀態(tài)信息;或者, 用于若查詢(xún)到所述圖片的狀態(tài)信息,且所述圖片未被縮略,則返回所述圖片的狀態(tài)信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器進(jìn)行縮略處理;或者, 用于若未查詢(xún)到所述圖片的狀態(tài)信息,則返回未查詢(xún)到的指示信息,并將所述圖片發(fā)送至圖片縮略服務(wù)器,根據(jù)所述圖片的網(wǎng)絡(luò)地址獲取所述圖片,對(duì)所述圖片進(jìn)行縮略處理。
10.根據(jù)權(quán)利要求9所述的圖片狀態(tài)服務(wù)器,其特征在于,所述圖片狀態(tài)服務(wù)器還包括 第一保存模塊,用于在保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)中更新所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。
11.根據(jù)權(quán)利要求9所述的圖片狀態(tài)服務(wù)器,其特征在于,所述圖片狀態(tài)服務(wù)器還包括 第二保存模塊,用于在查詢(xún)的鏈表中申請(qǐng)一個(gè)節(jié)點(diǎn),保存所述圖片的狀態(tài)信息,并將所述圖片的狀態(tài)設(shè)置為已縮略。
12.根據(jù)權(quán)利要求7-11任一項(xiàng)所述的圖片狀態(tài)服務(wù)器,其特征在于,所述圖片狀態(tài)服務(wù)器還包括 處理模塊,用于保存所述圖片最近被查詢(xún)的時(shí)間,若所述圖片的狀態(tài)信息在最近被查詢(xún)的時(shí)間之后超過(guò)預(yù)設(shè)時(shí)間仍沒(méi)有被查詢(xún),則將所述保存所述圖片的狀態(tài)信息的節(jié)點(diǎn)進(jìn)行刪除。
13.—種查詢(xún)圖片信息的系統(tǒng),包括圖片狀態(tài)服務(wù)器;其特征在于,所述圖片狀態(tài)服務(wù)器包括 設(shè)置模塊,用于設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表; 獲取模塊,用于獲取圖片的網(wǎng)絡(luò)地址; 計(jì)算模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值; 查詢(xún)模塊,用于根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。
14.根據(jù)權(quán)利要求13所述的查詢(xún)圖片信息的系統(tǒng),所述系統(tǒng)還包括 圖片縮略服務(wù)器,用于對(duì)圖片進(jìn)行縮略處理,以適應(yīng)移動(dòng)終端設(shè)備進(jìn)行瀏覽操作; 圖片存儲(chǔ)服務(wù)器,用于保存縮略處理后的圖片。
全文摘要
本發(fā)明公開(kāi)了一種查詢(xún)圖片信息的方法、系統(tǒng)和圖片狀態(tài)服務(wù)器,屬于無(wú)線互聯(lián)網(wǎng)領(lǐng)域。本發(fā)明實(shí)施例包括設(shè)置桶指針數(shù)組,所述桶指針數(shù)組中每一個(gè)桶指針指向一個(gè)鏈表;獲取圖片的網(wǎng)絡(luò)地址;根據(jù)所述圖片的網(wǎng)絡(luò)地址,計(jì)算用于唯一標(biāo)識(shí)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值;根據(jù)所述圖片的網(wǎng)絡(luò)地址的關(guān)鍵值,在其對(duì)應(yīng)的桶指針指向的鏈表中查詢(xún)所述圖片的狀態(tài)信息。本發(fā)明實(shí)施例通過(guò)對(duì)圖片的網(wǎng)絡(luò)地址進(jìn)行計(jì)算,使得任何一個(gè)圖片的網(wǎng)絡(luò)地址都有一個(gè)唯一與其對(duì)應(yīng)的關(guān)鍵值,這個(gè)關(guān)鍵值唯一對(duì)應(yīng)一個(gè)節(jié)點(diǎn)來(lái)保存圖片的狀態(tài)信息,避免了出現(xiàn)哈希沖突的問(wèn)題,可以準(zhǔn)確的判斷圖片是否被縮略過(guò),同時(shí)提高了用戶(hù)的使用體驗(yàn)。
文檔編號(hào)G06F17/30GK103049445SQ201110308488
公開(kāi)日2013年4月17日 申請(qǐng)日期2011年10月12日 優(yōu)先權(quán)日2011年10月12日
發(fā)明者王濤偉, 張立明, 李瑞方, 楊巍 申請(qǐng)人:騰訊科技(深圳)有限公司