本申請涉及網(wǎng)絡(luò)技術(shù),特別涉及一種業(yè)務(wù)處理方法和裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,利用互聯(lián)網(wǎng)搭建產(chǎn)品銷售平臺的業(yè)務(wù)也越來越多。當(dāng)一個(gè)產(chǎn)品在網(wǎng)上平臺銷售時(shí),用戶可以通過下單付款來購買該產(chǎn)品。伴隨著產(chǎn)品的銷售,平臺需要進(jìn)行產(chǎn)品庫存的管理,例如,隨著產(chǎn)品的售出,對應(yīng)的產(chǎn)品庫存將減少??赡艹霈F(xiàn)的一種問題是,同一時(shí)刻出現(xiàn)多人下單的大并發(fā)訪問,此時(shí)可能出現(xiàn)重復(fù)扣減庫存。為了防止出現(xiàn)該問題,相關(guān)技術(shù)中可以使用數(shù)據(jù)庫鎖以防止重復(fù)操作。而數(shù)據(jù)庫鎖的方式,對于多訂單同時(shí)鎖定資源只能逐筆處理,容易導(dǎo)致并發(fā)線程過多,資源消耗大幅上升,嚴(yán)重時(shí)將導(dǎo)致系統(tǒng)崩潰。因此,數(shù)據(jù)庫鎖的方式使得庫存管理的效率低且不可靠。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本申請?zhí)峁┮环N業(yè)務(wù)處理方法和裝置,以提高業(yè)務(wù)處理的效率和可靠性。
具體地,本申請是通過如下技術(shù)方案實(shí)現(xiàn)的:
第一方面,提供一種業(yè)務(wù)處理方法,所述業(yè)務(wù)處理方法用于對數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)進(jìn)行更新;所述方法包括:
啟動對應(yīng)本次更新操作的數(shù)據(jù)庫事務(wù),在產(chǎn)品數(shù)據(jù)更新流水表中創(chuàng)建與本次更新操作對應(yīng)的唯一索引,并在所述產(chǎn)品數(shù)據(jù)更新流水表中,執(zhí)行與所述唯一索引對應(yīng)的更新流水記錄的插入操作,所述更新流水記錄用于記錄本 次更新操作的更新信息;
若根據(jù)所述唯一索引,插入所述更新流水記錄成功,則更新所述產(chǎn)品數(shù)據(jù),并在所述數(shù)據(jù)庫事務(wù)成功執(zhí)行時(shí),完成對所述產(chǎn)品數(shù)據(jù)的更新。
第二方面,提供一種業(yè)務(wù)處理裝置,包括:
索引創(chuàng)建模塊,用于啟動對應(yīng)本次更新操作的數(shù)據(jù)庫事務(wù),在產(chǎn)品數(shù)據(jù)更新流水表中創(chuàng)建與本次更新操作對應(yīng)的唯一索引,并在所述產(chǎn)品數(shù)據(jù)更新流水表中,執(zhí)行與所述唯一索引對應(yīng)的更新流水記錄的插入操作,所述更新流水記錄用于記錄本次更新操作的更新信息;
事務(wù)處理模塊,用于在根據(jù)所述唯一索引,插入所述更新流水記錄成功時(shí),則更新所述產(chǎn)品數(shù)據(jù),并在所述數(shù)據(jù)庫事務(wù)成功執(zhí)行時(shí),完成對所述產(chǎn)品數(shù)據(jù)的更新。
本申請?zhí)峁┑臉I(yè)務(wù)處理方法和裝置,通過采用唯一索引來控制多個(gè)用戶下單的并發(fā)訪問情況下的防止重復(fù)操作,可以允許并行處理多個(gè)訂單的業(yè)務(wù)訪問,只要每個(gè)訪問的處理都根據(jù)唯一索引來判斷是否重復(fù)即可,唯一索引可以保證對于一個(gè)訂單的一個(gè)類型的數(shù)據(jù)更新操作是唯一的,可以防止出現(xiàn)重復(fù)的更新操作,由于這種方式允許業(yè)務(wù)的并行處理,所以可以加快業(yè)務(wù)處理的效率;并且,也正是由于并行處理業(yè)務(wù),可以避免出現(xiàn)資源消耗過度而引起的系統(tǒng)崩潰,提高可靠性。
附圖說明
圖1是本申請一示例性實(shí)施例示出的一種產(chǎn)品數(shù)據(jù)更新應(yīng)用場景圖;
圖2是本申請一示例性實(shí)施例示出的一種業(yè)務(wù)處理方法的流程圖;
圖3是本申請一示例性實(shí)施例示出的一種庫存數(shù)據(jù)更新的流程圖;
圖4是本申請一示例性實(shí)施例示出的一種庫存管理流程圖;
圖5是本申請一示例性實(shí)施例示出的一種業(yè)務(wù)處理裝置的結(jié)構(gòu)示意圖;
圖6是本申請一示例性實(shí)施例示出的一種業(yè)務(wù)處理裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
這里將詳細(xì)地對示例性實(shí)施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本申請相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請的一些方面相一致的裝置和方法的例子。
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,產(chǎn)品的網(wǎng)絡(luò)銷售平臺也隨之建立。例如,商家可以在網(wǎng)絡(luò)銷售平臺銷售自己的產(chǎn)品,用戶可以通過下單付款來購買該產(chǎn)品;并且伴隨著產(chǎn)品的銷售,對產(chǎn)品的庫存數(shù)據(jù)進(jìn)行管理,以清晰準(zhǔn)確的掌握所銷售產(chǎn)品的庫存情況。本申請實(shí)施例的業(yè)務(wù)處理方法,即可以應(yīng)用于對產(chǎn)品的庫存數(shù)據(jù)的更新。如圖1所示,用戶11可以通過終端12的顯示屏,瀏覽終端12上展示的多種在售產(chǎn)品,并可以下單購買。后臺的服務(wù)端13可以根據(jù)產(chǎn)品的銷售情況,更新該產(chǎn)品的庫存數(shù)據(jù),比如,當(dāng)某種產(chǎn)品售出一件后,對應(yīng)該產(chǎn)品的庫存數(shù)量就減去一。
在本申請的例子中,所要更新的產(chǎn)品的庫存數(shù)據(jù)可以包括多種類型的數(shù)據(jù),例如,在售庫存、已售庫存、凍結(jié)庫存等,其中,在售庫存可以是當(dāng)前銷售的產(chǎn)品可以供給用戶進(jìn)行購買的總庫存;已售庫存可以是產(chǎn)品已經(jīng)售出的總庫存,該已售庫存是用戶已經(jīng)購買且已經(jīng)付款成功的產(chǎn)品,凍結(jié)庫存是將用戶已經(jīng)買下但尚未付款的庫存凍結(jié)起來,暫時(shí)不再提供給其他用戶購買。其他例子不再詳舉,在具體實(shí)施中,可以根據(jù)業(yè)務(wù)特點(diǎn)設(shè)置所需要的不同類型的庫存數(shù)據(jù)。
本申請實(shí)施例的業(yè)務(wù)處理方法,將用于解決同一時(shí)刻多人對產(chǎn)品下單的這種并發(fā)執(zhí)行的情況中,如何對數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)進(jìn)行更新,以避免出現(xiàn)重復(fù)扣減庫存,并且旨在提高庫存管理的效率。圖2示例了本申請實(shí)施例的業(yè)務(wù)處理方法的流程圖,該方法可以包括:
在步驟201中,在更新數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)之前,啟動對應(yīng)本次更新操 作的數(shù)據(jù)庫事務(wù),在對應(yīng)本次更新操作的產(chǎn)品數(shù)據(jù)更新流水表中,創(chuàng)建與本次更新操作對應(yīng)的唯一索引,并在該更新流水表執(zhí)行與唯一索引對應(yīng)的更新流水記錄的插入操作,該更新流水記錄用于記錄本次更新操作的更新信息。
本例子中,可以通過唯一索引來控制對數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)進(jìn)行更新,在該產(chǎn)品銷售的例子中,產(chǎn)品數(shù)據(jù)可以是產(chǎn)品的庫存數(shù)據(jù)。例如,結(jié)合圖1的示例,服務(wù)端13可以根據(jù)用戶11在終端12側(cè)的產(chǎn)品購買操作,對后臺的該產(chǎn)品庫存數(shù)據(jù)進(jìn)行更新,比如,在用戶下單并正常付款后,此時(shí)產(chǎn)品已經(jīng)實(shí)際售出,進(jìn)行扣減庫存,或者當(dāng)用戶未付款成功后,返還庫存,將所返還的庫存對應(yīng)的產(chǎn)品重新提供給用戶進(jìn)行購買。例如,在圖1所示的數(shù)據(jù)庫中可以存儲產(chǎn)品數(shù)據(jù)表,該產(chǎn)品數(shù)據(jù)表中可以存儲各個(gè)產(chǎn)品的庫存數(shù)據(jù),該庫存數(shù)據(jù)可以包括根據(jù)實(shí)際業(yè)務(wù)特點(diǎn)制定的多種類型的用于記錄庫存的數(shù)據(jù)。
如上所述的,數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù)表中,可以包括多種類型的庫存數(shù)據(jù),比如在售庫存、已售庫存等,而不論是對何種類型的庫存數(shù)據(jù)進(jìn)行更新,本步驟可以在更新之前創(chuàng)建對應(yīng)本次更新操作的唯一索引。唯一索引是一種不允許具有索引值相同的記錄的索引,禁止重復(fù)的索引出現(xiàn),根據(jù)該唯一索引的特點(diǎn),可以用于控制對同一訂單的同一類型的庫存更新(該同一類型的庫存更新即對某一種類型的庫存數(shù)據(jù)進(jìn)行更新),只能成功執(zhí)行一次,以避免重復(fù)更新。一個(gè)唯一索引可以表示一次庫存操作,該庫存操作可以是對應(yīng)某一訂單的某一類型的庫存更新,例如,該唯一索引可以包括:業(yè)務(wù)標(biāo)識和對產(chǎn)品數(shù)據(jù)的更新操作類型。其中,業(yè)務(wù)標(biāo)識,可以是用戶下單購買某個(gè)產(chǎn)品時(shí)的訂單id,而對產(chǎn)品數(shù)據(jù)的更新操作類型,可以是對庫存數(shù)據(jù)的更新操作類型,比如,對庫存進(jìn)行凍結(jié)操作等。
在一個(gè)例子中,對應(yīng)本次更新操作的唯一索引,可以創(chuàng)建在產(chǎn)品數(shù)據(jù)更新流水表中,參見圖1的示例,在該流水表中對應(yīng)該唯一索引,還插入更新流水記錄,該更新流水記錄主要用于記錄本次數(shù)據(jù)更新操作的更新信息,例如,在已售庫存增加了多少庫存數(shù)量等。
本實(shí)施例中,可以啟動數(shù)據(jù)庫事務(wù)來執(zhí)行數(shù)據(jù)更新,在啟動數(shù)據(jù)庫事務(wù) 后,可以執(zhí)行包括在流水表中新建一個(gè)對應(yīng)本次更新操作的唯一索引,例如,訂單id+凍結(jié)庫存,并且在流水表中插入更新流水記錄;該數(shù)據(jù)庫事務(wù)還包括在插入更新流水記錄成功時(shí),對圖1所示的產(chǎn)品數(shù)據(jù)表中的庫存數(shù)據(jù)進(jìn)行更新,例如更改在售庫存的數(shù)量。當(dāng)上述的任務(wù)都成功執(zhí)行時(shí),該數(shù)據(jù)庫事務(wù)成功提交,否則,其中任一任務(wù)失敗,整個(gè)數(shù)據(jù)庫事務(wù)回滾。
在步驟202中,如果根據(jù)唯一索引,插入更新流水記錄成功,也就是說本次更新操作的唯一索引在流水表中是唯一的,比如上述的唯一索引“訂單id+凍結(jié)庫存”,經(jīng)比較發(fā)現(xiàn)該唯一索引在流水表中唯一,即對于該id的訂單進(jìn)行凍結(jié)庫存的更新操作只有本次操作,不存在重復(fù)操作,則成功插入本次更新操作的更新流水記錄。并且,可以依據(jù)更新流水記錄,對產(chǎn)品數(shù)據(jù)表中的庫存數(shù)據(jù)進(jìn)行對應(yīng)更新,完成對產(chǎn)品數(shù)據(jù)的更新。否則,如果由于多種原因?qū)е聰?shù)據(jù)庫事務(wù)執(zhí)行失敗,則事務(wù)回滾,在產(chǎn)品數(shù)據(jù)表中不執(zhí)行本次更新流水記錄中的更新操作。
在圖1所示的例子中,可以通過產(chǎn)品數(shù)據(jù)更新流水表來控制對產(chǎn)品數(shù)據(jù)表中的數(shù)據(jù)更新,例如,通過在產(chǎn)品數(shù)據(jù)更新流水表創(chuàng)建唯一索引,以保證每次對產(chǎn)品庫存的更新都是唯一的一次操作,比如,對于一個(gè)訂單的一次操作類型的庫存更新(如,凍結(jié)庫存),不會出現(xiàn)重復(fù)的兩次操作。又例如,通過以數(shù)據(jù)庫事務(wù)的方式執(zhí)行唯一索引對應(yīng)的更新流水記錄,可以保證只在事務(wù)成功執(zhí)行時(shí)才更新產(chǎn)品數(shù)據(jù)表中的庫存數(shù)據(jù),不會出現(xiàn)事務(wù)失敗時(shí)對產(chǎn)品數(shù)據(jù)表的部分更新。
本例子的業(yè)務(wù)處理方法,通過采用唯一索引來控制多個(gè)用戶下單的并發(fā)訪問情況下的防止重復(fù)操作,相對于數(shù)據(jù)庫鎖的控制方式來說,數(shù)據(jù)庫鎖的方式對于多訂單只能逐筆處理,效率比較低,處理速度慢,使得資源的消耗較大,而本例子的使用唯一索引進(jìn)行控制的方式,可以允許并行處理多個(gè)訂單的業(yè)務(wù)訪問,只要每個(gè)訪問的處理都根據(jù)唯一索引來判斷是否重復(fù)即可,唯一索引可以保證對于一個(gè)訂單的一個(gè)類型的數(shù)據(jù)更新操作是唯一的,可以防止出現(xiàn)重復(fù)的更新操作,由于這種方式允許業(yè)務(wù)的并行處理,所以可以加 快業(yè)務(wù)處理的效率;并且,也正是由于并行處理業(yè)務(wù),可以避免出現(xiàn)資源消耗過度而引起的系統(tǒng)崩潰,提高可靠性。
如下示例一種對產(chǎn)品庫存更新的邏輯流程:
圖3示例了一種庫存數(shù)據(jù)更新的流程,例如,用戶11在終端12由產(chǎn)品銷售平臺下單購買產(chǎn)品時(shí),可以觸發(fā)服務(wù)端13執(zhí)行本流程,以根據(jù)產(chǎn)品的銷售情況,及時(shí)更新數(shù)據(jù)庫中的產(chǎn)品庫存數(shù)據(jù)。如圖3所示,該流程可以包括:
在步驟301中,啟動數(shù)據(jù)庫事務(wù)。
在步驟302中,可以在產(chǎn)品數(shù)據(jù)更新流水表中創(chuàng)建一個(gè)唯一索引,在本庫存管理的例子中,產(chǎn)品數(shù)據(jù)更新流水表也可以命名為產(chǎn)品庫存流水表。本例子中,在產(chǎn)品庫存流水表中新建的唯一索引是對應(yīng)本次庫存數(shù)據(jù)更新的操作,可以包括:訂單id和操作類型。其中的訂單id可以是用戶在終端12側(cè)下單的訂單標(biāo)識,操作類型例如可以是:凍結(jié)庫存。該唯一索引表示本次產(chǎn)品數(shù)據(jù)更新是對應(yīng)該訂單id的所述操作類型的的更新操作。
在步驟303中,對應(yīng)唯一索引,可以在產(chǎn)品庫存流水表中插入一條更新流水記錄,該記錄用于記錄本次庫存數(shù)據(jù)更新的處理。
在步驟304中,根據(jù)唯一索引判斷插入更新流水記錄是否成功。例如,可以查找產(chǎn)品庫存流水表中是否存在相同的唯一索引,即訂單id和操作類型都相同的索引。
如果存在,表示重復(fù)操作,則插入更新流水記錄失敗,數(shù)據(jù)庫事務(wù)回滾,本次庫存更新失敗,并且撤銷插入的唯一索引,服務(wù)端還可以提示用戶,流程結(jié)束,參見步驟305至307。
如果產(chǎn)品庫存流水表中不存在相同的唯一索引,則成功插入更新流水記錄。并可以繼續(xù)進(jìn)行產(chǎn)品庫存數(shù)據(jù)的更新處理,在處理時(shí),可以依據(jù)業(yè)務(wù)條件判斷本次更新操作是否能夠成功執(zhí)行,比如,當(dāng)要凍結(jié)庫存時(shí),在售庫存的數(shù)量減去要凍結(jié)的庫存數(shù)量之后,剩余的在售庫存需要大于或等于要求的最小庫存量;否則,表示不符合業(yè)務(wù)條件,不能凍結(jié)庫存。如果滿足業(yè)務(wù)條件,則對產(chǎn)品數(shù)據(jù)表中的庫存數(shù)據(jù)進(jìn)行更新,數(shù)據(jù)庫事務(wù)提交,庫存數(shù)據(jù)更 新結(jié)束,服務(wù)端可以提示用戶購買成功,跳轉(zhuǎn)至支付頁面。如果條件不滿足,則事務(wù)回滾,庫存數(shù)據(jù)更新失敗。參見步驟308至311。
此外,在對產(chǎn)品庫存更新中,還可能出現(xiàn)的情況是,具體要執(zhí)行何種類型的數(shù)據(jù)更新操作,需要根據(jù)關(guān)聯(lián)的業(yè)務(wù)處理結(jié)果來確定。比如,在用戶購買下單之后,用戶對該訂單進(jìn)行付款,根據(jù)用戶付款的不同結(jié)果,可以執(zhí)行不同的庫存更新操作。例如,如果用戶付款成功,表示該產(chǎn)品已經(jīng)售出,那需要從當(dāng)前的已售庫存中增加已銷售的庫存數(shù)量,如果使用到上面提到的凍結(jié)庫存的應(yīng)用,可以是從凍結(jié)庫存中減小所銷售的庫存數(shù)量;如果用戶付款失敗,那需要將凍結(jié)庫存中對應(yīng)該用戶購買的庫存數(shù)量重新增加到在售庫存中。因此,不同的業(yè)務(wù)處理結(jié)果,執(zhí)行的對該產(chǎn)品的庫存數(shù)據(jù)的更新操作可能不同,當(dāng)產(chǎn)品的庫存數(shù)據(jù)包括多種類型的庫存數(shù)據(jù)時(shí),不同的業(yè)務(wù)處理結(jié)果可以導(dǎo)致需要對不同類型的庫存數(shù)據(jù)進(jìn)行更新。
參見圖4所示,仍以用戶購買商品的例子來說,可以判斷用戶是否成功付款,在庫存管理的例子中,用戶付款成功與否,是庫存數(shù)據(jù)更新操作的關(guān)聯(lián)業(yè)務(wù)處理結(jié)果,根據(jù)該結(jié)果,可以確定本次更新操作,是對已售庫存更新,還是對在售庫存更新。比如,當(dāng)用戶成功付款時(shí),那就是要增加已售庫存的數(shù)量,當(dāng)用戶付款失敗時(shí),就要將凍結(jié)的那部分庫存重新增加進(jìn)在售庫存中,以重新銷售。
此外,不論是增加在售庫存或者是增加已售庫存,都可以設(shè)定為一個(gè)獨(dú)立的庫存數(shù)據(jù)更新流程。比如,用戶付款成功時(shí),要執(zhí)行已售庫存的增加流程,通過該流程可以對數(shù)據(jù)庫的產(chǎn)品數(shù)據(jù)表中的已售庫存進(jìn)行數(shù)據(jù)更新,這種情況下所記錄的更新流水記錄是對已售庫存的更新記錄,并且,該更新流水記錄對應(yīng)的唯一索引仍然是“訂單id和操作類型”,只是操作類型對應(yīng)的是對已售庫存增加的操作類型。
又比如,用戶付款失敗時(shí),要執(zhí)行在售庫存的增加流程,通過該流程可以對數(shù)據(jù)庫的產(chǎn)品數(shù)據(jù)表中的在售庫存進(jìn)行數(shù)據(jù)更新(當(dāng)然該流程中也可以涉及到關(guān)聯(lián)的其他類型庫存數(shù)據(jù)的更新),這種情況下所記錄的更新流水記 錄是對在售庫存的更新記錄,并且,該更新流水記錄對應(yīng)的唯一索引“訂單id和操作類型”,其中的操作類型對應(yīng)的是對在售庫存增加的操作類型。
上面提到的根據(jù)用戶是否成功付款,所確定的不同的庫存數(shù)據(jù)更新流程,其中的流程操作步驟與圖3所示的流程類似,不再詳述。比如,在流程中同樣也要在產(chǎn)品庫存流水表中創(chuàng)建本次更新操作的唯一索引,并對應(yīng)該唯一索引插入更新流水記錄。如果更新流水記錄插入成功,則表示本次操作是唯一的,不存在重復(fù)操作;否則,如果插入失敗,表示存儲重復(fù)的更新操作,數(shù)據(jù)庫事務(wù)可以回滾,拒絕本次更新。
本申請還提供了一種業(yè)務(wù)處理裝置,以實(shí)現(xiàn)上述的業(yè)務(wù)處理方法,如圖5所示,該裝置可以包括:索引創(chuàng)建模塊51和事務(wù)處理模塊52。
索引創(chuàng)建模塊51,用于啟動對應(yīng)本次更新操作的數(shù)據(jù)庫事務(wù),在產(chǎn)品數(shù)據(jù)更新流水表中創(chuàng)建與本次更新操作對應(yīng)的唯一索引,并在所述產(chǎn)品數(shù)據(jù)更新流水表中,執(zhí)行與所述唯一索引對應(yīng)的更新流水記錄的插入操作,所述更新流水記錄用于記錄本次更新操作的更新信息;
事務(wù)處理模塊52,用于在根據(jù)所述唯一索引,插入所述更新流水記錄成功時(shí),則更新所述產(chǎn)品數(shù)據(jù),并在所述數(shù)據(jù)庫事務(wù)成功執(zhí)行時(shí),完成對所述產(chǎn)品數(shù)據(jù)的更新。
在一個(gè)例子中,所述數(shù)據(jù)庫中的產(chǎn)品數(shù)據(jù),包括:數(shù)據(jù)庫中的產(chǎn)品的庫存數(shù)據(jù)。
在一個(gè)例子中,參見圖6所示,索引創(chuàng)建模塊51可以包括:創(chuàng)建單元511和記錄單元512。
創(chuàng)建單元511,用于在產(chǎn)品數(shù)據(jù)更新流水表中,新建對應(yīng)本次更新操作的唯一索引,插入對應(yīng)本次更新操作的更新流水記錄;
記錄單元512,用于判斷所述產(chǎn)品數(shù)據(jù)更新流水表中,是否存在相同的所述唯一索引;若存在相同的唯一索引,則插入所述更新流水記錄失敗,數(shù)據(jù)庫事務(wù)回滾,結(jié)束本次更新操作;否則,插入所述更新流水記錄成功。
在一個(gè)例子中,記錄單元512,還用于獲取本次更新操作的關(guān)聯(lián)業(yè)務(wù)處 理結(jié)果,確定與所述關(guān)聯(lián)業(yè)務(wù)處理結(jié)果對應(yīng)的本次更新操作。
在一個(gè)例子中,所述唯一索引,包括:業(yè)務(wù)標(biāo)識和對產(chǎn)品數(shù)據(jù)的更新操作類型。
在示例性實(shí)施例中,還提供了一種包括指令的非臨時(shí)性計(jì)算機(jī)可讀存儲介質(zhì),例如包括指令的存儲器,上述指令可由裝置的處理器執(zhí)行以完成上述方法。例如,所述非臨時(shí)性計(jì)算機(jī)可讀存儲介質(zhì)可以是rom、隨機(jī)存取存儲器(ram)、cd-rom、磁帶、軟盤和光數(shù)據(jù)存儲設(shè)備等。
以上所述僅為本申請的較佳實(shí)施例而已,并不用以限制本申請,凡在本申請的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請保護(hù)的范圍之內(nèi)。