圖片處理方法及裝置的制造方法
【專利摘要】本發明實施例提供一種圖片處理方法及裝置,所述方法包括:圖片處理服務器獲取分配的兩個以上圖片處理請求,生成兩個以上圖片下載任務;檢測存在帶寬空閑資源且帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得圖片下載任務對應的下載圖片;根據每一個下載圖片,生成圖片操作任務;檢測存在處理空閑資源且處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;根據每一個處理圖片,生成圖片上傳任務;檢測存在帶寬空閑資源且帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。本發明實施例提高了圖片處理效率。
【專利說明】
圖片處理方法及裝置
技術領域
[0001]本發明實施例涉及網絡技術領域,尤其涉及一種圖片處理方法及裝置。
【背景技術】
[0002]隨著電子技術以及網絡技術的發展,帶動了網絡的崛起和智能設備的普及,互聯網上圖片的產生變得容易起來,每天都會增加大量新的圖片,圖片的訪問流量在整個互聯網流量中所占比例也逐漸提尚。
[0003]為了節省圖片訪問流量,圖片通常先以縮略圖的方式供客戶端瀏覽,在現有的一種網絡架構中,網絡中的各種文件包括用戶上傳或者網站生成的文件等先進行網絡存儲,如果網絡存儲的文件包括圖片時,會先由圖片處理服務器進行圖片處理,圖片處理服務器先從網絡存儲中下載圖片,再將下載圖片進行處理,包括修正圖片方位、重命名以及對圖片進行壓縮等,最后將壓縮之后的圖片上傳到各地的節點服務器,由節點服務器生成圖片縮略圖以及圖片縮略圖的訪問地址,客戶端獲知圖片縮略圖的訪問地址之后,即可以對圖片縮略圖進行瀏覽。
[0004]由上述描述可知,圖片處理服務器對圖片的處理主要包括下載圖片、處理圖片以及上傳圖片三個操作,現有技術中圖片處理服務器對圖片的處理都是單線程操作,對任一個圖片在下載、處理以及上傳之后,再對其他圖片進行處理,但是隨著網絡圖片的數量逐漸增多,這種單線程操作會大大影響圖片處理的效率。
【發明內容】
[0005]本發明實施例提供一種圖片處理方法及裝置,用以解決現有技術圖片處理效率低的技術問題。
[0006]本發明實施例提供一種圖片處理方法,所述方法包括:
[0007]圖片處理服務器獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務;
[0008]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片;
[0009]根據每一個下載圖片,生成圖片操作任務;
[0010]檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0011 ]根據每一個處理圖片,生成圖片上傳任務;
[0012]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0013]本發明實施例提供一種圖片處理裝置,所述裝置包括:
[0014]下載任務生成模塊,用于獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務;
[0015]圖片下載模塊,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片;
[0016]操作任務生成模塊,用于根據每一個下載圖片,生成圖片操作任務;
[0017]圖片操作模塊,用于檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0018]上傳任務生成模塊,用于根據每一個處理圖片,生成圖片上傳任務;
[0019]圖片上傳模塊,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0020]本發明實施例提供的圖片處理方法及裝置,圖片處理服務器針對任務服務器分配的每一個圖片處理請求,建立對應的圖片下載任務;對執行圖片下載任務下載獲得的每一個下載圖片,建立圖片操作任務;對執行圖片操作任務獲得的每一個處理圖片,建立圖片上傳任務。通過對帶寬空閑資源進行檢測,可以是實時檢測或者周期性檢測,檢測存在帶寬空閑資源時,即可以執行圖片下載任務或者圖片上傳任務,在檢測存在處理空閑資源時,即可以執行圖片操作任務,無需針對一個圖片處理請求,下載圖片、處理圖片以及上傳圖片結束之后,再執行下一個圖片處理請求,只有存在空閑的資源即可以進行圖片的下載、處理或上傳,從而實現了多線程操作,既充分利用了資源,又提高了圖片處理效率。
【附圖說明】
[0021]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0022]圖1為本發明圖片處理方法一個實施例流程圖;
[0023]圖2為本發明圖片處理方法又一個實施例流程圖;
[0024]圖3為本發明圖片處理裝置一個實施例的結構示意圖;
[0025]圖4為本發明圖片處理裝置又一個實施例的結構示意圖。
【具體實施方式】
[0026]為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0027]本發明實施例主要應用于對網絡中生成的各種圖片的處理,網絡中的文件包括用戶上傳或者網站生成的文件等,首先存儲在網絡存儲系統中。在網絡存儲系統中的文件包括圖片時,任務引擎端即會下發圖片處理請求,由圖片處理服務器進行處理,圖片處理服務器有多個形成集群。為了負載均衡,通常由任務服務器進行圖片處理請求的分配。在實際應用中,負責負載均衡的任務服務器可以是nginx服務器(engine x,一種高性能的web服務器和方向代理服務器),圖片處理服務器可以是resin服務器(一種應用服務器)。
[0028]圖片處理服務器進行圖片下載、處理以及上傳至節點服務器,其中,節點服務器可以是分布在各地的⑶N(Content Delivery Network,內容分發網絡)服務器,由節點服務器生成圖片縮略圖以及圖片縮略圖的訪問地址,并反饋給網絡存儲系統,客戶端獲知圖片縮略圖的訪問地址之后,即可以對圖片縮略圖進行瀏覽。
[0029]由于現有技術中圖片處理服務器對圖片的處理是單線程操作,對任一個圖片在下載、處理以及上傳之后,再對其他圖片進行處理,而分配給圖處理服務器的圖片處理請求不止一個,因此就會大大影響圖片處理的效率。
[0030]為了解決這一技術問題,發明人經過一系列研究提出本發明技術方案,在本發明實施例中,圖片處理服務器針對任務服務器分配的每一個圖片處理請求,建立對應的圖片下載任務;對執行圖片下載任務下載獲得的每一個下載圖片,建立圖片操作任務;對執行圖片操作任務獲得的每一個處理圖片,建立圖片上傳任務。通過對帶寬空閑資源進行檢測,可以是實時檢測或者周期性檢測,檢測存在帶寬空閑資源時,即可以執行圖片下載任務或者圖片上傳任務,在檢測存在處理空閑資源時,即可以執行圖片操作任務,無需針對一個圖片處理請求,下載圖片、處理圖片以及上傳圖片結束之后,再執行下一個圖片處理請求,只有存在空閑的資源即可以進行圖片的下載、處理或上傳,從而實現了多線程操作,既充分利用了資源,又提高了圖片處理效率。
[0031]圖1為本發明提供的一種圖片處理方法一個實施例的流程圖,該方法可以包括以下幾個步驟:
[0032]101:圖片處理服務器獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務。
[0033]該圖片處理請求具體是任務服務器分配的。
[0034]其中,兩個以上圖片處理請求包括兩個圖片處理請求的情況。
[0035]在一個實際應用中,該任務服務器可以是nginx服務器,主要對圖片處理進行負載均衡,分配圖片處理請求給集群中的圖片處理服務器。
[0036]圖片處理服務器可以是resin服務器。
[0037]圖片處理服務器接收到兩個以上圖片處理請求之后,針對每一個圖片處理請求,即會生成對應的圖片下載任務,以便于進行圖片下載。
[0038]102:檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片。
[0039]可以是實時檢測或者周期性檢測,執行圖片下載任務進行圖片下載也即從網絡存儲系統中獲取圖片處理請求對應的圖片。
[0040]本發明實施例中,可以對帶寬資源進行監控。只要檢測存在帶寬空閑資源時,即可以執行至少一個圖片下載任務。
[0041]其中,該第一閾值可以根據執行一個圖片下載任務所需帶寬資源進行設定。
[0042]該至少一個圖片下載任務,可以根據帶寬空閑資源的多少進行確定。
[0043]當當前不存在帶寬空閑資源,或者帶寬空閑資源小于第一閾值,則可以繼續進行監控,直至存在帶寬空閑資源且帶寬空閑資源大于第一閾值時,再執行圖片下載任務。
[0044]103:根據每一個下載圖片,生成圖片操作任務。
[0045]獲得下載圖片之后,即可以對下載圖片進行處理,因此生成針對每一個下載圖片對應的圖片操作任務。
[0046]104:檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片。
[0047]處理空閑資源是指圖片處理服務器的空閑的處理資源,執行圖片操作進行圖片處理,需要占用圖片處理服務器的處理資源。
[0048]本發明實施例可以對圖片處理服務器的處理資源進行監控,存在處理空閑資源時,即可以執行至少一個圖片操作任務。
[0049]其中,該第二閾值可以根據執行一個圖片操作任務所需處理資源進行設定。
[0050]該至少一個圖片操作任務,可以根據處理空閑資源的多少進行確定。
[0051]當當前不存在處理空閑資源,或者處理空閑資源小于第二閾值,則可以繼續進行監控,直至存在處理空閑資源且處理空閑資源大于第二閾值時,再執行圖片操作任務。
[0052]對下載圖片進行處理包括修正圖片方位、重命名以及對圖片進行壓縮等,與現有技術相同,在此不再贅述。
[0053]105:根據每一個處理圖片,生成圖片上傳任務。
[0054]106:檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0055]獲得處理圖片之后,針對每一個處理圖片,生成對應的圖片上傳任務。
[0056]由于圖片上傳任務也需要占用帶寬空閑資源,因此監控存在帶寬空閑資源時,SP可以執行至少一個圖片上傳任務。
[0057]其中,該第三閾值可以根據執行一個圖片上傳任務所需帶寬資源進行設定。
[0058]當當前不存在帶寬空閑資源,或者帶寬空閑資源小于第三閾值,則可以繼續進行監控,直至存在帶寬空閑資源或者帶寬空閑資源大于第三閾值時,再執行圖片上傳任務。
[0059]其中,具體是將處理圖片上傳至節點服務器,由節點服務器生成圖片縮略圖以及圖片縮略圖的訪問地址。
[0060]本發明實施例中,接收到兩個以上圖片處理請求,首先建立圖片下載任務,對下載圖片建立對應的圖片處理任務,對處理圖片建立對應的圖片上傳任務,通過對帶寬空閑資源進行檢測,檢測存在帶寬空閑資源時,即可以執行圖片下載任務或者圖片上傳任務,在檢測存在處理空閑資源時,即可以執行圖片操作任務,無需針對一個圖片處理請求,下載圖片、處理圖片以及上傳圖片結束之后,再執行下一個圖片處理請求,只有存在空閑的資源即可以進行圖片的下載、處理或上傳,從而實現了多線程操作,既充分利用了資源,又提高了圖片處理效率。
[0061]由于圖片下載以及圖片上傳均需要占用帶寬資源,為了合理調配圖片下載任務以及圖片上傳任務,作為又一個實施例,該第三閾值可以小于所述第一閾值,從而使得可以優先執行圖片上傳任務。
[0062]當然,根據不同的實際應用情況,該第三閾值也可以大于所述第一閾值,使得可以優先執行圖片下載任務。
[0063]另外,作為又一個實施例,為了優先執行圖片上傳任務,以保證一個圖片處理請求處理完畢,此時檢測存在帶寬空閑資源,且帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,進行圖片下載,獲得下載圖片可以:
[0064]檢測存在帶寬空閑資源,且帶寬空閑資源大于第一閾值時,如果存在圖片上傳任務,優先執行至少一個圖片上傳任務,將所述至少一個圖片上傳任務對應的處理圖片進行上傳;
[0065]如果不存在圖片上傳任務,執行至少一個圖片下載任務,進行圖片下載,獲得所述圖片下載任務對應的下載圖片。
[0066]其中,如果存在兩個以上圖片下載任務,則所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片可以:
[0067]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,根據下載優先級,按照下載優先級從高到低的順序,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片。
[0068]該下載優先級可以由任務服務器設定并告知圖片處理服務器,當然也可以由圖片處理服務器進行設定。
[0069]下載優先級可以根據圖片來源進行設定,比如圖片來源為計算機的下載優先級高于圖片來源為移動端的下載優先級。
[0070]所述檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片可以:
[0071]檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,根據操作優先級,按照操作優先級從高到低的順序,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0072]所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳可以包括:
[0073]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,根據上傳優先級,按照上傳優先級從高到低的順序,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0074]該操作優先級以及上傳優先級,與下載優先級的設定方式可以相同。
[0075]當然,該操作優先級可以是先下載的圖片的操作優先級高、后下載的圖片優先級低。該上傳優先級可以是先處理的圖片上傳優先級高、后處理的圖片優先級低等。
[0076]其中,為了保證圖片下載、圖片處理以及圖片上傳能夠有序執行。在生成圖片下載任務之后,所述方法還可以包括:
[0077]將每一個圖片下載任務加入創建的圖片下載隊列中。
[0078]生成圖片操作任務之后,所述方法還可以包括:
[0079]將每一個圖片操作任務加入創建的圖片操作隊列中;
[0080]所述生成圖片上傳任務之后,所述方法還包括:
[0081 ]將每一個圖片上傳任務加入創建的圖片上傳隊列中;
[0082]則所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片可以是:
[0083]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,獲取所述下載隊列中的至少一個圖片下載任務并執行,獲得所述圖片下載任務對應的下載圖片;
[0084]所述檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片可以是:
[0085]檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,從所述圖片操作隊列中獲取至少一個圖片操作任務并執行,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0086]所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳可以是:
[0087]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,獲取所述圖片上傳隊列中的至少一個圖片上傳任務并執行,將所述圖片上傳任務對應的處理圖片進行上傳。
[0088]在圖片下載隊列中,各個圖片下載任務可以按照下載優先級進行排列,從而直接從圖片下載隊列中依次獲取圖片下載任務即可。
[0089]在圖片操作隊列中,各個圖片操作任務可以按照操作優先級進行排列,從而直接從圖片操作隊列中依次獲取圖片下載任務即可。
[0090]在圖片上傳對隊列中,各個圖片操作任務可以按照上傳優先級進行排列,從而直接從圖片操作隊列中依次獲取圖片上傳任務即可。
[0091]其中,作為又一個實施例,由于圖片下載可以下載失敗,因此在存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,進行圖片下載,獲得下載圖片之后,所述方法還可以包括:
[0092]在任一圖片下載任務執行失敗之后,重新執行所述圖片下載任務;
[0093]在所述圖片下載任務連續執行失敗第一預設次數之后,生成下載故障信息反饋給所述任務服務器。
[0094]任務服務器即會反饋給任務引擎端,任務引擎端可以根據失敗的圖片下載任務對應的圖片處理請求,重新生成圖片處理請求,由任務服務器進行分配處理。
[0095]作為又一個實施例,圖片上傳也可能會失敗,因此在存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片下載任務,進行圖片下載,獲得下載圖片之后,所述方法還可以包括:
[0096]在任一圖片上傳任務執行失敗之后,重新執行所述圖片上傳任務;
[0097]在所述圖片上傳任務連續執行失敗第二預設次數之后,生成上傳故障信息反饋給所述任務服務器。
[0098]任務服務器即會反饋給任務引擎端,任務引擎端可以根據失敗的圖片上傳任務對應的圖片處理請求,重新生成圖片處理請求,由任務服務器進行分配處理。
[0099]圖片處理服務器將圖片上傳任務對應的處理圖片處理進行上傳,具體是上傳至節點服務器,該節點服務器可以是位于各個區域的CDN服務器,由節點服務器將上傳圖片再生成圖片縮略圖以及圖片縮略圖的訪問地址,將圖片縮略圖的訪問地址返回給圖片處理服務器,圖片處理服務器再將圖片縮略圖的訪問地址返回給任務服務器,任務服務器再反饋給圖片存儲系統,客戶端請求瀏覽圖片時,圖片存儲系統反饋給客戶端縮略圖的訪問地址,客戶端即可以實現對圖片縮略圖的瀏覽。
[0100]下面結合圖2,對本發明提供的圖片處理方法又一個實施例進行描述,該方法可以包括以下幾個步驟:
[0101]201:圖片處理服務器獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務。
[0102]202:將所述圖片下載任務加入創建的圖片下載隊列中。
[0103]203:檢測是否存在大于第一閾值的帶寬空閑資源,如果是,執行步驟204,如果否繼續檢測。
[0104]204:獲取所述圖片下載隊列中的至少一個圖片下載任務并執行,進行圖片下載,獲得所述圖片下載任務對應的下載圖片。
[0105]205:在任一圖片下載任務執行失敗之后,重新執行所述圖片下載任務;
[0106]206:在所述圖片下載任務連續執行失敗第一預設次數之后,生成下載故障信息反饋給任務服務器。
[0107]207:根據每一個下載圖片,生成圖片操作任務。
[0108]208:將每一個圖片操作任務加入創建的圖片操作隊列中。
[0109]209:檢測是否存在大于第二閾值的處理空閑資源,如果是,執行步驟210,如果否繼續檢測。
[0110]210:從所述圖片操作隊列中獲取至少一個圖片操作任務并執行,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片。
[0111]211:根據每一個處理圖片,生成圖片上傳任務。
[0112]212:將每一個圖片上傳任務加入創建的圖片上傳隊列中。
[0113]213:檢測是否存在大于第三閾值的帶寬空閑資源,如果是,執行步驟214,如果否,繼續檢測。
[0114]214:獲取所述圖片上傳隊列中的至少一個圖片上傳任務并執行,將所述圖片上傳任務對應的處理圖片進行上傳。
[0115]215:在任一圖片上傳任務執行失敗之后,重新執行所述圖片上傳任務;
[0116]216:在所述圖片上傳任務連續執行失敗第二預設次數之后,生成上傳故障信息反饋給任務服務器。
[0117]通過本發明實施例,充分利用了資源,提高了圖片處理效率。
[0118]圖3為本發明實施例提供的一種圖片處理裝置一個實施例的結構示意圖,本實施例所述裝置主要應用于圖片處理服務器中,該圖片處理服務器中在一個實際應用中可以是指res in服務器,該裝置可以包括:
[0119]下載任務生成模塊301,用于獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務。
[0120]在一個實際應用中,該任務服務器可以是nginx服務器,主要對圖片處理進行負載均衡,分配圖片處理請求給集群中的圖片處理服務器。
[0121]圖片下載模塊302,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片。
[0122]本發明實施例中,可以對帶寬資源進行監控。只要檢測存在帶寬空閑資源時,即可以執行至少一個圖片下載任務。
[0123]其中,該第一閾值可以根據執行一個圖片下載任務所需帶寬資源進行設定。
[0124]該至少一個圖片下載任務,可以根據帶寬空閑資源的多少進行確定。
[0125]當圖片下載模塊檢測當前不存在帶寬空閑資源,或者帶寬空閑資源小于第一閾值,則可以繼續進行監控,直至存在帶寬空閑資源,且帶寬空閑資源大于第一閾值時,再執行圖片下載任務。
[0126]操作任務生成模塊303,用于根據每一個下載圖片,生成圖片操作任務。
[0127]圖片操作模塊304,用于檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片。
[0128]處理空閑資源是指圖片處理服務器的空閑的處理資源,執行圖片操作進行圖片處理,需要占用圖片處理服務器的處理資源。
[0129]本發明實施例可以對圖片處理服務器的處理資源進行監控,存在處理空閑資源時,即可以執行至少一個圖片操作任務。
[0130]其中,該第二閾值可以根據執行一個圖片操作任務所需處理資源進行設定。
[0131]該至少一個圖片操作任務,可以根據處理空閑資源的多少進行確定。
[0132]當圖片操作模塊檢測當前不存在處理空閑資源,或者處理空閑資源小于第二閾值,則可以繼續進行監控,直至存在處理空閑資源或者處理空閑資源大于第二閾值時,再執行圖片操作任務。
[0133]對下載圖片進行處理包括修正圖片方位、重命名以及對圖片進行壓縮等,與現有技術相同,在此不再贅述。
[0134]上傳任務生成模塊305,用于根據每一個處理圖片,生成圖片上傳任務;
[0135]圖片上傳模塊306,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0136]由于圖片上傳任務也需要占用帶寬空閑資源,因此監控存在帶寬空閑資源時,SP可以執行至少一個圖片上傳任務。
[0137]其中,該第三閾值可以根據執行一個圖片上傳任務所需帶寬資源進行設定。
[0138]當圖片上傳模塊檢測當前不存在帶寬空閑資源,或者帶寬空閑資源小于第三閾值,則可以繼續進行監控,直至存在帶寬空閑資源或者帶寬空閑資源大于第三閾值時,再執行圖片上傳任務。
[0139]本發明實施例中,接收到兩個以上圖片處理請求,首先建立圖片下載任務,對下載圖片建立對應的圖片處理任務,對處理圖片建立對應的圖片上傳任務,通過對帶寬空閑資源進行檢測,可以是實時檢測或者周期性檢測,檢測存在帶寬空閑資源時,即可以執行圖片下載任務或者圖片上傳任務,在檢測存在處理空閑資源時,即可以執行圖片操作任務,無需針對一個圖片處理請求,下載圖片、處理圖片以及上傳圖片結束之后,再執行下一個圖片處理請求,只有存在空閑的資源即可以進行圖片的下載、處理或上傳,從而實現了多線程操作,既充分利用了資源,又提高了圖片處理效率。
[0140]由于圖片下載以及圖片上傳均需要占用帶寬資源,為了合理調配圖片下載任務以及圖片上傳任務,作為又一個實施例,該第三閾值可以小于所述第一閾值,從而使得可以優先執行圖片上傳任務。
[0141]當然,根據不同的實際應用情況,該第三閾值也可以大于所述第一閾值,使得可以優先執行圖片下載任務。
[0142]另外,作為又一個實施例,為了優先執行圖片上傳任務,以保證一個圖片處理請求處理完畢,此時圖片下載模塊可以具體用于:
[0143]檢測存在帶寬空閑資源,且帶寬空閑資源大于第一閾值時,如果存在圖片上傳任務,優先觸發圖片上傳模塊執行至少一個圖片上傳任務,將所述至少一個圖片上傳任務對應的處理圖片進行上傳;
[0144]如果不存在圖片上傳任務,執行至少一個圖片下載任務,進行圖片下載,獲得所述圖片下載任務對應的下載圖片。
[0145]其中,如果存在兩個以上圖片下載任務,所述圖片下載模塊可以具體用于:
[0146]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,根據下載優先級,按照下載優先級從高到低的順序,執行至少一個圖片下載任務,進行圖片下載,獲得所述圖片下載任務對應的下載圖片;
[0147]該下載優先級可以由任務服務器設定并告知圖片處理服務器,當然也可以由圖片處理服務器進行設定。
[0148]下載優先級可以根據圖片來源進行設定,比如圖片來源為計算機的下載優先級高于圖片來源為移動端的下載優先級。
[0149]所述圖片操作模塊可以具體用于:
[0150]檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,根據操作優先級,按照操作優先級從高到低的順序,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0151]所述圖片上傳模塊可以具體用于:
[0152]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,根據上傳優先級,按照上傳優先級從高到低的順序,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。
[0153]該操作優先級以及上傳優先級,與下載優先級的設定方式可以相同。
[0154]當然,該操作優先級可以是先下載的圖片的操作優先級高、后下載的圖片優先級低。該上傳優先級可以是先處理的圖片上傳優先級高、后處理的圖片優先級低等。
[0155]其中,為了保證圖片下載、圖片處理以及圖片上傳能夠有序執行。如圖4所示,該裝置可以包括:
[0156]第一隊列模塊307,用于將每一個圖片下載任務加入創建的圖片下載隊列中;
[0157]第二隊列模塊308,用于將每一個圖片操作任務加入創建的圖片操作隊列中;
[0158]第三隊列模塊309,用于將每一個圖片上傳任務加入創建的圖片上傳隊列中;
[0159]則所述圖片下載模塊302可以具體用于:
[0160]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,獲取所述下載隊列中的至少一個圖片下載任務并執行,獲得所述圖片下載任務對應的下載圖片;
[0161 ]所述圖片操作模塊304可以具體用于:
[0162]檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,從所述圖片操作隊列中獲取至少一個圖片操作任務并執行,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;
[0163]所述圖片上傳模塊具體306可以具體用于:
[0164]檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,獲取所述圖片上傳隊列中的至少一個圖片上傳任務并執行,將所述圖片上傳任務對應的處理圖片進行上傳。
[0165]其中,作為又一個實施例,由于圖片下載可以下載失敗,因此所述圖片下載模塊302在存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得下載圖片之后,還用于在任一圖片下載任務執行失敗之后,重新執行所述圖片下載任務;
[0166]如圖4所示,該裝置還可以包括:
[0167]第一故障模塊310,用于在所述圖片下載任務連續執行失敗第一預設次數之后,生成下載故障信息反饋給所述任務服務器。
[0168]任務服務器即會反饋給任務引擎端,任務引擎端可以根據失敗的圖片下載任務對應的圖片處理請求,重新生成圖片處理請求,由任務服務器進行分配處理。
[0169]作為又一個實施例,圖片上傳也可能會失敗,因此所述圖片上傳模塊306在存在帶寬空閑資源時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳之后,還用于在任一圖片上傳任務執行失敗之后,重新執行所述圖片上傳任務;
[0170]如圖4所示,該裝置還可以包括:
[0171 ]第二故障模塊31丨,用于在所述圖片上傳任務連續執行失敗第二預設次數之后,生成上傳故障信息反饋給所述任務服務器。
[0172]任務服務器即會反饋給任務引擎端,任務引擎端可以根據失敗的圖片上傳任務對應的圖片處理請求,重新生成圖片處理請求,由任務服務器進行分配處理。
[0173]其中,圖片上傳模塊將圖片上傳任務對應的處理圖片處理進行上傳,具體是上傳至節點服務器,該節點服務器可以是位于各個區域的CDN服務器,由節點服務器將上傳圖片再生成圖片縮略圖以及圖片縮略圖的訪問地址,將圖片縮略圖的訪問地址返回給該圖片處理裝置,圖片處理裝置再將圖片縮略圖的訪問地址返回給任務服務器,任務服務器再反饋給圖片存儲系統,客戶端請求瀏覽圖片時,圖片存儲系統反饋給客戶端縮略圖的訪問地址,客戶端即可以實現對圖片縮略圖的瀏覽。
[0174]本發明實施例還提供了一種圖片處理系統,包括圖片處理服務器、任務引擎端、任務服務器以及節點服務器;
[0175]圖片處理服務器配置有如圖3或圖4對應實施例所述的圖片處理裝置。
[0176]任務服務器用于向圖片處理服務器分配圖片處理請求,并接收圖片處理服務器的下載故障信息以及上傳故障信息,將下載故障信息以及上傳故障信息傳輸至任務引擎端;
[0177]任務引擎端用于檢測網絡存儲系統中存在圖片時,生成圖片處理請求;根據下載故障信息以及上傳故障信息,重新生成圖片處理請求;觸發任務服務器分配圖片處理請求;
[0178]節點服務器用于接收圖片處理服務器上傳的圖片,并生成圖片縮略圖以及所述縮略圖的訪問地址。
[0179]從而客戶端在進行圖片瀏覽時,可以根據縮略圖的訪問地址瀏覽圖片縮略圖。
[0180]通過本發明實施例的技術方案,充分利用了圖片處理服務器的資源,提高了圖片處理效率。
[0181]以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施例方案的目的。本領域普通技術人員在不付出創造性的勞動的情況下,即可以理解并實施。
[0182]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到各實施方式可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件。基于這樣的理解,上述技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品可以存儲在計算機可讀存儲介質中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行各個實施例或者實施例的某些部分所述的方法。
[0183]最后應說明的是:以上實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。
【主權項】
1.一種圖片處理方法,其特征在于,包括: 圖片處理服務器獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務; 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片; 根據每一個下載圖片,生成圖片操作任務; 檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片; 根據每一個處理圖片,生成圖片上傳任務; 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。2.根據權利要求1所述的方法,其特征在于,所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片包括: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,根據下載優先級,按照下載優先級從高到低的順序,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片; 所述檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片包括: 檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,根據操作優先級,按照操作優先級從高到低的順序,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片; 所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳包括: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,根據上傳優先級,按照上傳優先級從高到低的順序,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。3.根據權利要求1所述的方法,其特征在于,所述在存在帶寬空閑資源時,執行至少一個圖片下載任務,獲得下載圖片之后,所述方法還包括: 在任一圖片下載任務執行失敗之后,重新執行所述圖片下載任務; 在所述圖片下載任務連續執行失敗第一預設次數之后,生成下載故障信息反饋給任務服務器。4.根據權利要求1所述的方法,其特征在于,所述在存在帶寬空閑資源時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳之后,所述方法還包括: 在任一圖片上傳任務執行失敗之后,重新執行所述圖片上傳任務; 在所述圖片上傳任務連續執行失敗第二預設次數之后,生成上傳故障信息反饋給任務服務器。5.根據權利要求1所述的方法,其特征在于,所述生成圖片下載任務之后,所述方法還包括: 將每一個圖片下載任務加入創建的圖片下載隊列中; 所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片包括: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,獲取所述下載隊列中的至少一個圖片下載任務并執行,獲得所述圖片下載任務對應的下載圖片; 所述生成圖片操作任務之后,所述方法還包括: 將每一個圖片操作任務加入創建的圖片操作隊列中; 所述檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片包括: 檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,從所述圖片操作隊列中獲取至少一個圖片操作任務并執行,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片; 所述生成圖片上傳任務之后,所述方法還包括: 將每一個圖片上傳任務加入創建的圖片上傳隊列中; 所述檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳包括: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,獲取所述圖片上傳隊列中的至少一個圖片上傳任務并執行,將所述圖片上傳任務對應的處理圖片進行上傳。6.—種圖片處理裝置,其特征在于,包括: 下載任務生成模塊,用于獲取分配的兩個以上圖片處理請求,生成對應的兩個以上圖片下載任務; 圖片下載模塊,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片; 操作任務生成模塊,用于根據每一個下載圖片,生成圖片操作任務; 圖片操作模塊,用于檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片;上傳任務生成模塊,用于根據每一個處理圖片,生成圖片上傳任務; 圖片上傳模塊,用于檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。7.根據權利要求6所述的裝置,其特征在于,所述圖片下載模塊具體用于: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,根據下載優先級,按照下載優先級從高到低的順序,執行至少一個圖片下載任務,獲得所述圖片下載任務對應的下載圖片; 所述圖片操作模塊具體用于: 檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,根據操作優先級,按照操作優先級從高到低的順序,執行至少一個圖片操作任務,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片; 所述圖片上傳模塊具體用于: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,根據上傳優先級,按照上傳優先級從高到低的順序,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳。8.根據權利要求6所述的裝置,其特征在于,所述圖片下載模塊在存在帶寬空閑資源時,執行至少一個圖片下載任務,獲得下載圖片之后,還用于在任一圖片下載任務執行失敗之后,重新執行所述圖片下載任務; 所述裝置還包括: 第一故障模塊,用于在所述圖片下載任務連續執行失敗第一預設次數之后,生成下載故障信息反饋給任務服務器。9.根據權利要求6所述的裝置,其特征在于,所述圖片上傳模塊在存在帶寬空閑資源時,執行至少一個圖片上傳任務,將所述圖片上傳任務對應的處理圖片進行上傳之后,還用于在任一圖片上傳任務執行失敗之后,重新執行所述圖片上傳任務; 所述裝置還包括: 第二故障模塊,用于在所述圖片上傳任務連續執行失敗第二預設次數之后,生成上傳故障信息反饋給任務服務器。10.根據權利要求6所述的裝置,其特征在于,還包括: 第一隊列模塊,用于將每一個圖片下載任務加入創建的圖片下載隊列中; 第二隊列模塊,用于將每一個圖片操作任務加入創建的圖片操作隊列中; 第三隊列模塊,用于將每一個圖片上傳任務加入創建的圖片上傳隊列中; 所述圖片下載模塊具體用于: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第一閾值時,獲取所述下載隊列中的至少一個圖片下載任務并執行,獲得所述圖片下載任務對應的下載圖片; 所述圖片操作模塊具體用于: 檢測存在處理空閑資源,且所述處理空閑資源大于第二閾值時,從所述圖片操作隊列中獲取至少一個圖片操作任務并執行,對所述圖片操作任務對應的下載圖片進行處理,獲得處理圖片; 所述圖片上傳模塊具體用于: 檢測存在帶寬空閑資源,且所述帶寬空閑資源大于第三閾值時,獲取所述圖片上傳隊列中的至少一個圖片上傳任務并執行,將所述圖片上傳任務對應的處理圖片進行上傳。
【文檔編號】H04L12/26GK105897500SQ201510906769
【公開日】2016年8月24日
【申請日】2015年12月9日
【發明人】薛偉
【申請人】樂視網信息技術(北京)股份有限公司