系統(tǒng)的發(fā)布方法及裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)領域,具體而言,涉及一種系統(tǒng)的發(fā)布方法及裝置。
【背景技術】
[0002]隨著計算機技術的發(fā)展,用于各個領域的計算機系統(tǒng)的規(guī)模也隨著功能的完善而逐漸增大。由單一功能模塊構成的單一功能的系統(tǒng),逐漸演變?yōu)橛啥鄠€功能模塊組合而成的多功能的系統(tǒng)。
[0003]隨著系統(tǒng)規(guī)模的逐漸擴大,用于實現(xiàn)各個功能的子模塊之間,往往存在著復雜的依賴關系。并且,每個子模塊由不同的團隊進行開發(fā)。因此,新版本的發(fā)布日期和發(fā)布的版本號很難做到統(tǒng)一。
[0004]目前,在對系統(tǒng)進行發(fā)布時,因各個子模塊之間往往存在著復雜的依賴關系,所以如果在發(fā)布過程中,一旦有一處存在依賴關系的子模塊的發(fā)布順序發(fā)生錯誤,就有可能會使子模塊更新失敗,以至于最終導致的系統(tǒng)整體的發(fā)布失敗。
[0005]為了保證系統(tǒng)的正常發(fā)布,通常都會在對每個子模塊發(fā)布完成后,通過驗證發(fā)布結果來判斷該子模塊是否被成功發(fā)布。只有在當確定自當前子模塊被成功發(fā)布后,才會繼續(xù)發(fā)布其他子模塊。
[0006]針對現(xiàn)有技術中因在子模塊進行發(fā)布后還需要對子模塊進行驗證,導致的發(fā)布系統(tǒng)發(fā)布速度緩慢的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0007]本發(fā)明的主要目的在于提供一種系統(tǒng)的發(fā)布方法及裝置,以解決現(xiàn)有技術中因在子模塊進行發(fā)布后還需要對子模塊進行驗證,導致的發(fā)布系統(tǒng)發(fā)布速度緩慢的問題。
[0008]為了實現(xiàn)上述目的,根據(jù)本發(fā)明實施例的一個方面,提供了一種系統(tǒng)的發(fā)布方法。該方法包括:根據(jù)系統(tǒng)的結構,確定系統(tǒng)中功能節(jié)點之間的依賴關系;根據(jù)功能節(jié)點之間的依賴關系,生成編譯順序表;獲取與功能節(jié)點對應的節(jié)點源碼;按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件;根據(jù)二進制文件,對系統(tǒng)進行發(fā)布。
[0009]進一步的,在按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件之前,方法還包括:獲取節(jié)點源碼的節(jié)點屬性信息;根據(jù)節(jié)點屬性信息,判斷節(jié)點源碼的占用狀態(tài)。
[0010]進一步的,按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件包括:根據(jù)占用狀態(tài)和編譯順序表,創(chuàng)建編譯線程;通過編譯線程對節(jié)點源碼進行編譯,生成二進制文件。
[0011]進一步的,編譯順序表中包括系統(tǒng)中功能節(jié)點的當前版本號,其中,在按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件之前,方法還包括:根據(jù)節(jié)點源碼,確定節(jié)點源碼的發(fā)布版本號;將發(fā)布版本序號與系統(tǒng)的功能節(jié)點的當前版本號進行比對,得到比對結果;根據(jù)比對結果,對編譯順序表中的功能節(jié)點添加標記信息。
[0012]進一步的,在根據(jù)二進制文件,對系統(tǒng)進行發(fā)布之前,方法還包括:按照版本號將二進制文件存儲至緩存存儲器。
[0013]進一步的,根據(jù)二進制文件,對系統(tǒng)進行發(fā)布包括:根據(jù)編譯順序表的標記信息,從緩存存儲器中獲取與版本號對應的二進制文件;根據(jù)與編譯順序表中的版本號對應的二進制文件,生成發(fā)布文件;根據(jù)發(fā)布文件對系統(tǒng)進行發(fā)布。
[0014]為了實現(xiàn)上述目的,根據(jù)本發(fā)明實施例的另一方面,提供了一種系統(tǒng)的發(fā)布裝置,該裝置包括:第一確定模塊,用于根據(jù)系統(tǒng)的結構,確定系統(tǒng)中功能節(jié)點之間的依賴關系;生成模塊,用于根據(jù)功能節(jié)點之間的依賴關系,生成編譯順序表;第一獲取模塊,用于獲取與功能節(jié)點對應的節(jié)點源碼;編譯模塊,用于按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件;發(fā)布模塊,用于根據(jù)二進制文件,對系統(tǒng)進行發(fā)布。
[0015]進一步的,裝置還包括:第二獲取模塊,用于獲取節(jié)點源碼的節(jié)點屬性信息;判斷模塊,用于根據(jù)節(jié)點屬性信息,判斷節(jié)點源碼的占用狀態(tài)。
[0016]進一步的,編譯順序表中包括系統(tǒng)中功能節(jié)點的當前版本號,裝置還包括:第二確定模塊,用于根據(jù)節(jié)點源碼,確定節(jié)點源碼的發(fā)布版本號;比對模塊,用于將發(fā)布版本序號與系統(tǒng)的功能節(jié)點的當前版本號進行比對,得到比對結果;標記模塊,用于根據(jù)比對結果,對編譯順序表中的功能節(jié)點添加標記信息。
[0017]進一步的,裝置還包括:緩存模塊,用于按照版本號將二進制文件存儲至緩存存儲器。
[0018]根據(jù)發(fā)明實施例,通過根據(jù)系統(tǒng)的結構,確定系統(tǒng)中功能節(jié)點之間的依賴關系;根據(jù)功能節(jié)點之間的依賴關系,生成編譯順序表;獲取與功能節(jié)點對應的節(jié)點源碼;按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件;根據(jù)二進制文件,對系統(tǒng)進行發(fā)布,實現(xiàn)了通過控制對系統(tǒng)中各個功能節(jié)點的發(fā)布順序來確保系統(tǒng)的成功發(fā)布的效果,解決了現(xiàn)有技術中因在子模塊進行發(fā)布后還需要對子模塊進行驗證,導致的發(fā)布系統(tǒng)發(fā)布速度緩慢的問題。
【附圖說明】
[0019]構成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
[0020]圖1是根據(jù)本發(fā)明實施例一的一種系統(tǒng)的發(fā)布方法的流程圖;
[0021]圖2是根據(jù)本發(fā)明實施例一可選的一種系統(tǒng)的發(fā)布方法的流程圖;
[0022]圖3是根據(jù)本發(fā)明實施例一可選的一種系統(tǒng)的發(fā)布方法的流程圖;
[0023]圖4是根據(jù)本發(fā)明實施例一可選的一種系統(tǒng)的發(fā)布方法的流程圖;
[0024]圖5是根據(jù)本發(fā)明實施例二的一種系統(tǒng)的發(fā)布裝置的結構示意圖;
[0025]圖6是根據(jù)本發(fā)明實施例二可選的一種系統(tǒng)的發(fā)布裝置的結構示意圖;
[0026]圖7是根據(jù)本發(fā)明實施例二可選的一種系統(tǒng)的發(fā)布裝置的結構示意圖;以及
[0027]圖8是根據(jù)本發(fā)明實施例二可選的一種系統(tǒng)的發(fā)布裝置的結構示意圖。
【具體實施方式】
[0028]需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。下面將參考附圖并結合實施例來詳細說明本發(fā)明。
[0029]為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。
[0030]需要說明的是,本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本發(fā)明的實施例。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產(chǎn)品或設備固有的其它步驟或單元。
[0031]實施例1
[0032]本發(fā)明實施例提供了一種系統(tǒng)的發(fā)布方法,圖1是根據(jù)本發(fā)明實施例的系統(tǒng)的發(fā)布方法的流程圖,如圖1所示,該方法包括步驟如下:
[0033]步驟S11,根據(jù)系統(tǒng)的結構,確定系統(tǒng)中功能節(jié)點之間的依賴關系。
[0034]步驟S13,根據(jù)功能節(jié)點之間的依賴關系,生成編譯順序表。
[0035]步驟S15,獲取與功能節(jié)點對應的節(jié)點源碼。
[0036]步驟S17,按照編譯順序表中的編譯順序,對與功能節(jié)點對應的節(jié)點源碼進行編譯,生成二進制文件。
[0037]步驟S19,根據(jù)二進制文件,對系統(tǒng)進行發(fā)布。
[0038]通過上述步驟Sll至步驟S19,在確定系統(tǒng)中各個功能節(jié)點之間的依賴關系之后,根據(jù)依賴關系生成用于進行編譯的編譯順序表。在獲取到各個功能節(jié)點的節(jié)點源碼后,根據(jù)編譯順序表中的編譯順序,對系統(tǒng)中與功能節(jié)點對應的節(jié)點源碼進行編譯,最終實現(xiàn)對系統(tǒng)進行發(fā)布。利用上述實施例,實現(xiàn)了通過控制對系統(tǒng)中各個功能節(jié)點的發(fā)布順序來確保系統(tǒng)的成功發(fā)布的效果,解決了現(xiàn)有技術中因在子模塊進行發(fā)布后還需要對子模塊進行驗證,