两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

應用程序升級設備、裝置及方法與流程

文檔序號:12034392閱讀:445來源:國知局
應用程序升級設備、裝置及方法與流程

本發(fā)明涉及移動互聯(lián)網(wǎng)技術領域,具體涉及一種應用程序升級設備、裝置及方法。



背景技術:

目前在提供應用程序服務的系統(tǒng)中,應用程序通常都會包括一系列配置文件、動態(tài)鏈接庫及依賴的數(shù)據(jù)文件等。應用程序一般都會定期進行升級,例如進行數(shù)據(jù)更新或進行加載插件更新,所說的加載插件例如是數(shù)據(jù)加載模塊等。應用程序在升級時,可以進行熱升級,即在程序/服務不停止的前提下,通過增加、修改、刪除相關功能模塊,達到功能升級的目的。

但是,在進行數(shù)據(jù)更新時,有可能出現(xiàn)待加載的新數(shù)據(jù)的數(shù)據(jù)格式與舊版的數(shù)據(jù)加載模塊不兼容的情況,即舊版的數(shù)據(jù)加載模塊識別不了待加載的新數(shù)據(jù),導致無法完成熱升級。



技術實現(xiàn)要素:

為解決上述技術問題,本發(fā)明提供一種應用程序升級設備、裝置及方法,能有效實現(xiàn)應用程序的熱升級。

根據(jù)本發(fā)明的一個方面,提供一種應用程序升級設備,包括:

處理器,響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件,使用所述更新的加載插件加載所述待加載的新數(shù)據(jù);

存儲器,存儲所述應用程序的數(shù)據(jù)和加載插件。

根據(jù)本發(fā)明的另一個方面,提供一種計算機設備,包括:

處理器;以及

存儲器,其上存儲有可執(zhí)行代碼,當所述可執(zhí)行代碼被所述處理器執(zhí)行時,使所述處理器執(zhí)行以下所述的方法:

響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

根據(jù)本發(fā)明的另一個方面,提供一種非暫時性機器可讀存儲介質,其上存儲有可執(zhí)行代碼,當所述可執(zhí)行代碼被電子設備的處理器執(zhí)行時,使所述處理器執(zhí)行以下所述的方法:

響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

根據(jù)本發(fā)明的另一個方面,提供一種應用程序升級裝置,包括:

插件更新模塊,用于響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

第一數(shù)據(jù)加載模塊,用于使用所述插件更新模塊更新的加載插件加載所述待加載的新數(shù)據(jù)。

可選的,所述裝置還包括:

第二數(shù)據(jù)加載模塊,用于響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

可選的,所述插件更新模塊包括:

獲知子模塊,用于獲知應用程序的加載插件識別待加載的新數(shù)據(jù)失??;

處理子模塊,用于響應于所述獲知子模塊獲知應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,加載包含新動態(tài)鏈接庫的新加載插件。

可選的,所述裝置還包括:

刪除模塊,用于在所述第一數(shù)據(jù)加載模塊使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,刪除加載前的數(shù)據(jù)和加載插件。

根據(jù)本發(fā)明的另一個方面,提供一種應用程序升級方法,包括:

響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

可選的,所述方法還包括:

響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

可選的,所述更新所述加載插件包括:

加載包含新動態(tài)鏈接庫的新加載插件。

可選的,所述使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,還包括:

刪除加載前的數(shù)據(jù)和加載插件。

可以發(fā)現(xiàn),本發(fā)明實施例的技術方案,在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)失敗也即發(fā)現(xiàn)舊版加載插件與新數(shù)據(jù)不兼容時,更新加載插件,通過使用更新的加載插件加載待加載的新數(shù)據(jù),這樣就可以在新數(shù)據(jù)與舊版加載插件不兼容時,通過同時更新數(shù)據(jù)與加載插件的方式,實現(xiàn)熱更新并保證服務不會中斷,使得本發(fā)明實施例的技術方案不局限于只能熱更新兼容的數(shù)據(jù),而且同時更新數(shù)據(jù)和加載插件也可以保證服務不會中斷。

進一步的,本發(fā)明實施例在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)成功也即發(fā)現(xiàn)舊版加載插件與新數(shù)據(jù)兼容時,可以直接使用加載插件加載所述待加載的新數(shù)據(jù)。

進一步的,本發(fā)明實施例更新所述加載插件可以是加載包含新動態(tài)鏈接庫的新加載插件。

進一步的,本發(fā)明實施例在使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,還可以刪除加載前的數(shù)據(jù)和加載插件。

附圖說明

通過結合附圖對本公開示例性實施方式進行更詳細的描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實施方式中,相同的參考標號通常代表相同部件。

圖1是根據(jù)本發(fā)明的一個實施例的一種應用程序升級設備的示意性方框圖;

圖2是根據(jù)本發(fā)明的一個實施例的一種計算機設備的示意性方框圖;

圖3是根據(jù)本發(fā)明的一個實施例的一種應用程序升級裝置的示意性方框圖;

圖4是根據(jù)本發(fā)明的一個實施例的一種應用程序升級裝置的另一示意性方框圖;

圖5是根據(jù)本發(fā)明的一個實施例的一種應用程序升級方法的示意性流程圖;

圖6是根據(jù)本發(fā)明的一個實施例的一種應用程序升級方法的另一示意性流程圖。

具體實施方式

下面將參照附圖更詳細地描述本公開的優(yōu)選實施方式。雖然附圖中顯示了本公開的優(yōu)選實施方式,然而應該理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施方式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠將本公開的范圍完整地傳達給本領域的技術人員。

本發(fā)明提供一種應用程序升級設備、裝置及方法,能有效實現(xiàn)應用程序的熱升級。

以下結合附圖詳細描述本發(fā)明實施例的技術方案。

圖1是根據(jù)本發(fā)明的一個實施例的一種應用程序升級設備的示意性方框圖。

參照圖1,在一種應用程序升級設備10中,包括:處理器11、存儲器12。

處理器11,響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件,使用所述更新的加載插件加載所述待加載的新數(shù)據(jù);

存儲器12,存儲所述應用程序的數(shù)據(jù)和加載插件。

另外,處理器11還可以響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

圖2是根據(jù)本發(fā)明的一個實施例的一種計算機設備的示意性方框圖。

參照圖2,在一種計算機設備20中,包括:處理器21和存儲器22。

存儲器22,其上存儲有可執(zhí)行代碼,當所述可執(zhí)行代碼被所述處理器21執(zhí)行時,使所述處理器21執(zhí)行以下所述的方法:

響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

另外,處理器21還可以執(zhí)行以下方法:響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

本發(fā)明實施例還提供一種非暫時性機器可讀存儲介質,其上存儲有可執(zhí)行代碼,當所述可執(zhí)行代碼被電子設備的處理器執(zhí)行時,使所述處理器執(zhí)行以下所述的方法:

響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

另外,處理器還可以執(zhí)行以下方法:響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

需說明的是,在上述設備中的處理器,可以作為一個獨立的裝置結構,該獨立的裝置結構可以稱為一種應用程序升級裝置,該應用程序升級裝置可以包括多個子模塊,下文將結合圖3到圖4對應用程序升級裝置的結構進行詳細說明。

圖3是根據(jù)本發(fā)明的一個實施例的一種應用程序升級裝置的示意性方框圖。

參照圖3,在一種應用程序升級裝置30中,包括:插件更新模塊31、第一數(shù)據(jù)加載模塊32。

插件更新模塊31,用于響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件;

第一數(shù)據(jù)加載模塊32,用于使用所述插件更新模塊31更新的加載插件加載所述待加載的新數(shù)據(jù)。

由該實施例可見,本發(fā)明實施例的技術方案,在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)失敗也即發(fā)現(xiàn)舊版加載插件與新數(shù)據(jù)不兼容時,更新加載插件,通過使用更新的加載插件加載待加載的新數(shù)據(jù),這樣就可以在新數(shù)據(jù)與舊版加載插件不兼容時,通過同時更新數(shù)據(jù)與加載插件的方式,實現(xiàn)熱更新并保證服務不會中斷,使得本發(fā)明實施例的技術方案不局限于只能熱更新兼容的數(shù)據(jù),而且同時更新數(shù)據(jù)和加載插件也可以保證服務不會中斷。

圖4是根據(jù)本發(fā)明的一個實施例的一種應用程序升級裝置的另一示意性方框圖。

如圖4所示,在一種應用程序升級裝置40中,包括:插件更新模塊31、第一數(shù)據(jù)加載模塊32、第二數(shù)據(jù)加載模塊33、刪除模塊34。

其中,插件更新模塊31、第一數(shù)據(jù)加載模塊32的功能可以參見圖3所示。

其中,第二數(shù)據(jù)加載模塊33,用于響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。

其中,所述插件更新模塊31可以進一步包括:獲知子模塊311、處理子模塊312。

獲知子模塊311,用于獲知應用程序的加載插件識別待加載的新數(shù)據(jù)失?。?/p>

處理子模塊312,用于響應于所述獲知子模塊311獲知應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,加載包含新動態(tài)鏈接庫的新加載插件。

其中,刪除模塊34,用于在所述第一數(shù)據(jù)加載模塊32使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,刪除加載前的數(shù)據(jù)和加載插件。

另外,刪除模塊34還可以在第二數(shù)據(jù)加載模塊33使用所述加載插件加載所述待加載的新數(shù)據(jù)后,刪除加載前的數(shù)據(jù)。

可以發(fā)現(xiàn),本發(fā)明實施例除了可以在新數(shù)據(jù)與舊版加載插件不兼容時,通過同時更新數(shù)據(jù)與加載插件的方式,實現(xiàn)熱更新并保證服務不會中斷之外,還可以在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)成功也即發(fā)現(xiàn)舊版加載插件與新數(shù)據(jù)兼容時,直接使用加載插件加載所述待加載的新數(shù)據(jù)。另外本發(fā)明實施例在使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,還可以刪除加載前的數(shù)據(jù)和加載插件。

上述詳細介紹了本發(fā)明的一種應用程序升級設備、裝置,以下介紹本發(fā)明對應的應用程序升級方法。

圖5是根據(jù)本發(fā)明的一個實施例的一種應用程序升級方法的示意性流程圖。

所述方法可以應用于應用程序升級裝置中,所述應用程序升級裝置可以位于應用程序服務系統(tǒng)的應用服務器中,或位于客戶端設備中。

參照圖5,所述方法包括:

在步驟501中,響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件。

其中,通過加載插件識別待加載的新數(shù)據(jù)可以判斷出加載插件與待加載的新數(shù)據(jù)是否兼容,如果失敗表示不兼容,需要更新加載插件,如果成功表示兼容,不需更新加載插件。

在步驟502中,使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)。

由該實施例可見,本發(fā)明實施例的技術方案,在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)失敗也即發(fā)現(xiàn)舊版加載插件與新數(shù)據(jù)不兼容時,更新加載插件,通過使用更新的加載插件加載待加載的新數(shù)據(jù),這樣就可以在新數(shù)據(jù)與舊版加載插件不兼容時,通過同時更新數(shù)據(jù)與加載插件的方式,實現(xiàn)熱更新并保證服務不會中斷,使得本發(fā)明實施例的技術方案不局限于只能熱更新兼容的數(shù)據(jù),而且同時更新數(shù)據(jù)和加載插件也可以保證服務不會中斷。

圖6是根據(jù)本發(fā)明的一個實施例的一種應用程序升級方法的另一示意性流程圖。圖6相對于圖5更詳細描述了本發(fā)明實施例技術方案。

參照圖6,所述方法包括:

在步驟601中,判斷所述應用程序的加載插件能否識別待加載的新數(shù)據(jù),如果識別失敗,進入步驟602,如果識別成功,進入步驟605。

該步驟中,通過判斷應用程序的加載插件能否識別待加載的新數(shù)據(jù),可以確定出加載插件是否與待加載的新數(shù)據(jù)即新數(shù)據(jù)兼容,如果不能識別即不兼容,那么除了更新數(shù)據(jù),也需要更新加載插件,如果能識別也即能兼容,那么只有數(shù)據(jù)需要更新。

在步驟602中,響應于應用程序的加載插件識別待加載的新數(shù)據(jù)失敗,更新所述加載插件,進入步驟603。

該步驟中,根據(jù)加載插件識別待加載的新數(shù)據(jù)失敗確定加載插件與待加載的新數(shù)據(jù)不兼容,則更新加載插件。

其中更新加載插件包括:首先加載新加載插件的動態(tài)鏈接庫得到新加載插件,然后用新加載插件的動態(tài)鏈接庫實例化出新的數(shù)據(jù)加載模塊。

在步驟603中,使用所述更新的加載插件加載所述待加載的新數(shù)據(jù),進入步驟604。

因為加載插件已經(jīng)完成更新,與待加載的新數(shù)據(jù)實現(xiàn)兼容,因此該步驟中用新加載插件加載所述待加載的新數(shù)據(jù)即新的數(shù)據(jù),可以是用新加載插件實例化出新的數(shù)據(jù)加載模塊加載新的數(shù)據(jù)。

在步驟604中,刪除加載前的數(shù)據(jù)和加載插件。進入步驟607。

該步驟中,在新加載插件和新的數(shù)據(jù)都加載成功后,替換掉舊數(shù)據(jù)和舊加載插件,也即刪除加載前的數(shù)據(jù)和加載插件,至此應用程序包括插件部分與數(shù)據(jù)部分都完成熱更新,在該過程中舊的數(shù)據(jù)加載模塊持續(xù)提供服務保證服務不會中斷。

在步驟605中,響應于所述應用程序的所述加載插件識別待加載的新數(shù)據(jù)成功,使用所述加載插件加載所述待加載的新數(shù)據(jù)。進入步驟606。

該步驟中,根據(jù)加載插件識別待加載的新數(shù)據(jù)成功確定加載插件與待加載的新數(shù)據(jù)能兼容,那么只有數(shù)據(jù)需要更新,可以使用所述加載插件加載所述待加載的新數(shù)據(jù),也即可通過熱更新數(shù)據(jù)方式,使用舊加載插件加載新數(shù)據(jù),后續(xù)加載成功后可以替換掉舊數(shù)據(jù),則熱升級成功。

在步驟606中,刪除更新前的數(shù)據(jù)。進入步驟607。

該步驟中,在新的數(shù)據(jù)都加載成功后,替換掉舊數(shù)據(jù),也即刪除更新前的數(shù)據(jù)。

在步驟607中,應用程序完成更新。

可以發(fā)現(xiàn),本發(fā)明實施例中,在新數(shù)據(jù)與舊版加載插件不兼容時,同時更新數(shù)據(jù)與加載插件,并通過新加載插件加載新數(shù)據(jù)。新加載插件和新數(shù)據(jù)加載成功后,可以替換掉舊版的數(shù)據(jù)模塊,也即刪除加載前的數(shù)據(jù)和加載插件,至此應用程序包括插件部分與數(shù)據(jù)部分都完成熱更新,另外可以切換成新的加載插件與服務。所說新的服務,即已經(jīng)使用新插件與新數(shù)據(jù)對外服務了,在更新過程中進程不重啟,服務不中斷。

另外本發(fā)明實施例還可以在檢測到應用程序的加載插件識別待加載的新數(shù)據(jù)成功也即發(fā)現(xiàn)舊加載插件與新數(shù)據(jù)兼容時,直接使用舊加載插件加載所述待加載的新數(shù)據(jù)。另外本發(fā)明實施例在使用所述更新的加載插件加載所述待加載的新數(shù)據(jù)之后,還可以刪除加載前的數(shù)據(jù)和加載插件。

上文中已經(jīng)參考附圖詳細描述了根據(jù)本發(fā)明的技術方案。

此外,根據(jù)本發(fā)明的方法還可以實現(xiàn)為一種計算機程序或計算機程序產(chǎn)品,該計算機程序或計算機程序產(chǎn)品包括用于執(zhí)行本發(fā)明的上述方法中限定的上述各步驟的計算機程序代碼指令。

或者,本發(fā)明還可以實施為一種非暫時性機器可讀存儲介質(或計算機可讀存儲介質、或機器可讀存儲介質),其上存儲有可執(zhí)行代碼(或計算機程序、或計算機指令代碼),當所述可執(zhí)行代碼(或計算機程序、或計算機指令代碼)被電子設備(或計算設備、服務器等)的處理器執(zhí)行時,使所述處理器執(zhí)行根據(jù)本發(fā)明的上述方法的各個步驟。

本領域技術人員還將明白的是,結合這里的公開所描述的各種示例性邏輯塊、模塊、電路和算法步驟可以被實現(xiàn)為電子硬件、計算機軟件或兩者的組合。

附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)和方法的可能實現(xiàn)的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標記的功能也可以以不同于附圖中所標記的順序發(fā)生。例如,兩個連續(xù)的方框實際上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。

以上已經(jīng)描述了本發(fā)明的各實施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實施例。在不偏離所說明的各實施例的范圍和精神的情況下,對于本技術領域的普通技術人員來說許多修改和變更都是顯而易見的。本文中所用術語的選擇,旨在最好地解釋各實施例的原理、實際應用或對市場中的技術的改進,或者使本技術領域的其它普通技術人員能理解本文披露的各實施例。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
靖江市| 荃湾区| 新疆| 长沙市| 昌都县| 冷水江市| 镇安县| 香港| 奉节县| 平塘县| 嘉善县| 象山县| 桐梓县| 咸丰县| 榕江县| 广元市| 广州市| 河池市| 牡丹江市| 安达市| 吐鲁番市| 彭州市| 襄汾县| 武定县| 重庆市| 罗江县| 深水埗区| 景宁| 泾源县| 潢川县| 崇义县| 邵阳县| 安国市| 大城县| 松桃| 鄄城县| 基隆市| 军事| 莲花县| 大姚县| 汉川市|