專利名稱:配置信息的更新方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本申請涉及互聯(lián)網(wǎng)領(lǐng)域,具體而言,涉及一種配置信息的更新方法和系統(tǒng)。
背景技術(shù):
在應(yīng)用的開發(fā)、測試以及打包部署等各個環(huán)境中,往往都需要相應(yīng)的環(huán)境以及對外部系統(tǒng)的依賴等相關(guān)的配置信息,這些配置信息一般是由依賴項標(biāo)識(key)和依賴項特定環(huán)境值(value)組成。在開發(fā)環(huán)境、測試環(huán)境、線上環(huán)境以及生產(chǎn)環(huán)境中,一般配置信息的key是完全相同的,value的值是各不相同的。同時,在開發(fā)和測試過程中,每個環(huán)節(jié)都有其對應(yīng)的相關(guān)的配置信息。然而,在開發(fā)過程中,對同一個應(yīng)用,不同的開發(fā)團(tuán)隊會做不同的配置項的新增操作或者是修改操作,但是團(tuán)隊之間告知卻是滯后的,如果在開發(fā)過程中缺少配置信息,往往無法正常啟動應(yīng)用。進(jìn)一步的,在開發(fā)完畢后提交測試、以及測試完畢后提交發(fā)布,都需要傳遞對配置信息的變更信息,開發(fā)團(tuán)隊在對同一應(yīng)用的配置信息更新時,如果不能及時的相互通知,會導(dǎo)致無法正常編譯運(yùn)行,開發(fā)提交測試時或者提交發(fā)布時,如果配置信息傳遞錯誤,會導(dǎo)致下一任務(wù)無法正常執(zhí)行?;谏鲜隹梢园l(fā)現(xiàn),現(xiàn)有技術(shù)中,在開發(fā)過程中主要存在如下的問題:I)需要維護(hù)多個環(huán)境中的配置信息,維護(hù)效率低;2)多個環(huán)境中的配置信息不能實時地同步,從而導(dǎo)致在應(yīng)用發(fā)布時出現(xiàn)故障。
發(fā)明內(nèi)容
本申請?zhí)峁┝艘环N配置信息的更新方法和系統(tǒng),以至少解決現(xiàn)有技術(shù)中多個環(huán)境中的配置信息不能實時地同步,從而導(dǎo)致在應(yīng)用發(fā)布時出現(xiàn)故障的問題。根據(jù)本申請的一個方面,提供了一種配置信息的更新方法,該方法包括:配置管理中心接收應(yīng)用發(fā)布過程中的開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項;配置管理中心接收應(yīng)用發(fā)布過程中的測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單是測試節(jié)點(diǎn)設(shè)備將待更新的第二配置項記錄在從配置管理中心中獲取的由開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單中得到的配置修改申請單,第二配置項為測試節(jié)點(diǎn)設(shè)備在進(jìn)行當(dāng)前測試時采用的配置項;配置管理中心響應(yīng)于應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。優(yōu)選地,在配置管理中心響應(yīng)于應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后,配置信息的更新方法還包括:發(fā)布節(jié)點(diǎn)設(shè)備將更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備;發(fā)布節(jié)點(diǎn)設(shè)備在接收到審核節(jié)點(diǎn) 設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試。優(yōu)選地,在根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試之后,配置信息的更新方法還包括:若離線自動測試結(jié)果正常,則根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布。優(yōu)選地,通過如下步驟進(jìn)行當(dāng)前測試:根據(jù)第二配置項搭建測試環(huán)境;在搭建的測試環(huán)境下,響應(yīng)于輸入的測試命令對應(yīng)用進(jìn)行測試。優(yōu)選地,經(jīng)第一配置項和第二配置項更新后的配置信息與應(yīng)用的分支程序?qū)?yīng)。優(yōu)選地,在根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布之后,配置信息的更新方法還包括:將更新后的配置信息合并到與應(yīng)用的主干程序?qū)?yīng)的主干配置信息中。根據(jù)本申請的另一方面,提供了一種配置信息的更新系統(tǒng),包括:開發(fā)節(jié)點(diǎn)設(shè)備,用于在應(yīng)用發(fā)布過程中向配置管理中心提交配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項;測試節(jié)點(diǎn)設(shè)備,用于在應(yīng)用發(fā)布過程中從配置管理中心中獲取配置修改申請單,將當(dāng)前測試采用的配置項作為待更新的第二配置項記錄在配置修改申請單,并將記錄有第一配置項和第二配置項的配置修改申請單提交給配置管理中心;發(fā)布節(jié)點(diǎn)設(shè)備,用于在應(yīng)用發(fā)布過程中根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。優(yōu)選地,發(fā)布節(jié)點(diǎn)設(shè)備包括:提交單元,用于在對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后,將更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備;第一測試單元,用于在接收到審核節(jié)點(diǎn)設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試。優(yōu)選地,配置信息的更新系統(tǒng)還包括:審核節(jié)點(diǎn)設(shè)備;審核節(jié)點(diǎn)設(shè)備包括:接收單元,用于接收發(fā)布節(jié)點(diǎn)設(shè)備提交的更新后的配置信息;響應(yīng)單元,用于響應(yīng)更新后的配置信息向發(fā)布節(jié)點(diǎn)設(shè)備發(fā)送指示更新的響應(yīng)消息。優(yōu)選地,配置信息的更新系統(tǒng)還包括:發(fā)布節(jié)點(diǎn)設(shè)備,用于在測試單元根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試之后,當(dāng)離線自動測試結(jié)果正常,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布。優(yōu)選地,測試節(jié)點(diǎn)設(shè)備包括:搭建單元,用于根據(jù)第二配置項搭建測試環(huán)境;第二測試單元,用于在搭建的測試環(huán)境下,響應(yīng)于輸入的測試命令對應(yīng)用進(jìn)行測試。優(yōu)選地,發(fā)布節(jié)點(diǎn)設(shè)備包括:合并單元,用于在根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布之后,將更新后的配置信息合并到與應(yīng)用的主干程序?qū)?yīng)的主干配置信息中,其中,經(jīng)第一配置項和第二配置項更新后的配置信息與應(yīng)用的分支程序?qū)?yīng)。在本申請中,通過配置管理中心對配置項進(jìn)行統(tǒng)一的管理,解決了現(xiàn)有技術(shù)中多個環(huán)境中的配置信息不能實時地同步,從而導(dǎo)致在應(yīng)用發(fā)布時出現(xiàn)故障的問題,本申請達(dá)到了配置項的統(tǒng)一管理,實現(xiàn)了多個環(huán)境配置信息的同步,提高了配置信息的維護(hù)效率,降低了應(yīng)用發(fā)布發(fā)生故障的概率。
此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:圖1是根據(jù)本申請實 施例的配置信息的更新系統(tǒng)的一種優(yōu)選結(jié)構(gòu)框圖2是根據(jù)本申請實施例的配置信息的更新系統(tǒng)的另一種優(yōu)選結(jié)構(gòu)框圖;圖3是根據(jù)本申請實施例的配置信息的更新系統(tǒng)的又一種優(yōu)選結(jié)構(gòu)框圖;圖4是根據(jù)本申請實施例的配置信息的更新系統(tǒng)的又一種優(yōu)選結(jié)構(gòu)框圖;圖5是根據(jù)本申請實施例的配置信息的更新方法的一種優(yōu)選流程圖;圖6是根據(jù)本申請實施例的配置信息的更新方法的另一種優(yōu)選流程圖;圖7是根據(jù)本申請實施例的配置信息的更新方法的又一種優(yōu)選流程圖;圖8是根據(jù)本申請實施例的配置信息的更新方法的又一種優(yōu)選流程圖;圖9是根據(jù)本申請實施例的配置信息的更新中預(yù)合并中配置信息格式的一種優(yōu)選示意圖;圖10是根據(jù)本申請實施例的配置信息的更新中預(yù)合并的一種優(yōu)選示意圖;圖11是根據(jù)本申請實施例的配置信息的更新方法中系統(tǒng)的功能組件的一種優(yōu)選示意圖。
具體實施例方式下文中將參考附圖并結(jié)合實施例來詳細(xì)說明本申請。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。在描述本申請的各實施例的進(jìn)一步細(xì)節(jié)之前,將參考圖1來描述可用于實現(xiàn)本申請的原理的一個合適的計算體系結(jié)構(gòu)。在以下描述中,除非另外指明,否則將參考由一個或多個計算機(jī)執(zhí)行的動作和操作的符號表示來描述本申請的各實施例。由此,可以理解,有時被稱為計算機(jī)執(zhí)行的這類動作和操作包括計算機(jī)的處理單元對以結(jié)構(gòu)化形式表示數(shù)據(jù)的電信號的操縱。這一操縱轉(zhuǎn)換了數(shù)據(jù)或在計算機(jī)的存儲器系統(tǒng)中的位置上維護(hù)它,這以本領(lǐng)域的技術(shù)人員都理解的方式重配置或改變了計算機(jī)的操作。維護(hù)數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)是具有數(shù)據(jù)的格式所定義的特定屬性的存儲器的物理位置。然而,盡管在上述上下文中描述本申請,但它并不意味著限制性的,如本領(lǐng)域的技術(shù)人員所理解的,后文所描述的動作和操作的各方面也可用硬件來實現(xiàn)。轉(zhuǎn)向附圖,其中相同的參考標(biāo)號指代相同的元素,本申請的原理被示為在一個合適的計算環(huán)境中實現(xiàn)。以下描述基于所述的本申請的實施例,并且不應(yīng)認(rèn)為是關(guān)于此處未明確描述的替換實施例而限制本申請。圖1示出了可用于這些設(shè)備的一個示例計算機(jī)體系結(jié)構(gòu)的示意圖。出于描述的目的,所繪的體系結(jié)構(gòu)僅為合適環(huán)境的一個示例,并非對本申請的使用范圍或功能提出任何局限。也不應(yīng)將該計算系統(tǒng)解釋為對圖1所示的任一組件或其組合具有任何依賴或需求。本申請的原理可以使用其它通用或?qū)S糜嬎慊蛲ㄐ怒h(huán)境或配置來操作。適用于本申請的眾所周知的計算系統(tǒng)、環(huán)境和配置的示例包括但不限于,個人計算機(jī)、服務(wù)器,多處理器系統(tǒng)、基于微處理的系統(tǒng)、小型機(jī)、大型計算機(jī)、以及包括任一上述系統(tǒng)或設(shè)備的分布式計算環(huán)境。在其最基本的配置中,圖1中的配置信息的更新系統(tǒng)100至少包括:一個網(wǎng)站的服務(wù)器102以及一個或多個客戶端104。服務(wù)器102可以包括但不限于微處理器MCU或可編程邏輯器件FPGA等的處理裝置、用于存儲數(shù)據(jù)的存儲裝置以及與客戶端通信的傳輸裝置;客戶端104可以包括:微處理器M CU、與服務(wù)器通信的傳輸裝置、與用戶交互的顯示裝置。在本說明書和權(quán)利要求書中,“系統(tǒng)”也可以被定義為能夠執(zhí)行軟件、固件或微碼來實現(xiàn)功能的任何硬件組件或硬件組件的組合。配置信息的更新系統(tǒng)100甚至可以是分布式的,以實現(xiàn)分布式功能。如本申請所使用的,術(shù)語“模塊”、“組件”或“單元”可以指在配置信息的更新系統(tǒng)100上執(zhí)行的軟件對象或例程。此處所描述的不同組件、模塊、單元、引擎和服務(wù)可被實現(xiàn)為在配置信息的更新系統(tǒng)100上執(zhí)行(例如,作為單獨(dú)的線程)的對象或進(jìn)程。盡管此處所描述的系統(tǒng)和方法較佳地以軟件來實現(xiàn),但是硬件或軟件和硬件的組合的實現(xiàn)也是可能并被構(gòu)想的。實施例1圖2是根據(jù)本申請實施例配置信息的更新系統(tǒng)的一種優(yōu)選的結(jié)構(gòu)示意圖,優(yōu)選地,本實施例中的系統(tǒng)位于服務(wù)器102上或者客戶端104上。優(yōu)選地,如圖2所示的配置信息的更新系統(tǒng)可以包括:I)開發(fā)節(jié)點(diǎn)設(shè)備202,用于在應(yīng)用發(fā)布過程中向配置管理中心208提交配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項;2)測試節(jié)點(diǎn)設(shè)備204,用于在應(yīng)用發(fā)布過程中從配置管理中心208中獲取配置修改申請單,將當(dāng)前測試采用的配置項作為待更新的第二配置項記錄在配置修改申請單,并將記錄有第一配置項和第二配置項的配置修改申請單提交給配置管理中心208 ;3)發(fā)布節(jié)點(diǎn)設(shè)備206,用于在應(yīng)用發(fā)布過程中根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心208中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。在上述優(yōu)選實施方式中,開發(fā)節(jié)點(diǎn)設(shè)備、測試節(jié)點(diǎn)設(shè)備、以及發(fā)布節(jié)點(diǎn)設(shè)備通過配置管理中心對配置項進(jìn)行統(tǒng)一的管理,解決了現(xiàn)有技術(shù)中多個環(huán)境中的配置信息不能實時地同步,從而導(dǎo)致在應(yīng)用發(fā)布時出現(xiàn)故障的問題,本申請達(dá)到了配置項的統(tǒng)一管理,實現(xiàn)了多個環(huán)境配置信息的同步,提高了配置信息的維護(hù)效率,降低了應(yīng)用發(fā)布發(fā)生故障的概率。在實際的應(yīng)用開發(fā)中,一個應(yīng)用通常是在多團(tuán)隊、多人以及多需求間進(jìn)行開發(fā)的,配置項的修改往往需要提前做出申請,并將這些修改在配置管理中心中預(yù)先體現(xiàn),為了方便合作開發(fā)以及對配置信息進(jìn)行統(tǒng)一管理,每次對配置信息的修改,都以單據(jù)的形式進(jìn)行控制和管理,這些單據(jù)就組成了配置修改申請單。本申請一個優(yōu)選實施方式中,如圖3所示,配置信息的更新系統(tǒng)還包括:審核節(jié)點(diǎn)設(shè)備210,發(fā)布節(jié)點(diǎn)設(shè)備206包括:提交單元302,第一測試單元304。審核節(jié)點(diǎn)設(shè)備210包括:接收單元306,響應(yīng)單元308。其中,提交單元302用于在對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后,將更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備;接收單元306,用于接收發(fā)布節(jié)點(diǎn)設(shè)備提交的更新后的配置信息;響應(yīng)單元308,用于響應(yīng)更新后的配置信息向發(fā)布節(jié)點(diǎn)設(shè)備發(fā)送指示更新的響應(yīng)消息;第一測試單元304,用于在接收到審核節(jié)點(diǎn)設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試。在上述優(yōu)選實施方式中,通過增加審核節(jié)點(diǎn)設(shè)備,可以有效地判斷更新后的配置信息是否合理。優(yōu)選地,上述實施例中的離線自動測試包括如下步驟:將與分支程序?qū)?yīng)的更新后的配置信息預(yù)合并到與主干程序?qū)?yīng)的主干配置信息中,并將分支程序與主干程序進(jìn)行合并,根據(jù)合并后的配置信息對 合并了分支程序的主干程序進(jìn)行聯(lián)合測試。
在本申請一個優(yōu)選實施方式中,發(fā)布節(jié)點(diǎn)設(shè)備206還用于當(dāng)離線自動測試結(jié)果正常,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布。在上述優(yōu)選實施方式中,在對預(yù)設(shè)的配置信息進(jìn)行更新之后,通過審核節(jié)點(diǎn)設(shè)備對更新的配置信息項進(jìn)行審核,在審核通過以后,對應(yīng)用進(jìn)行測試,在測試成功以后才將更新后的配置信息在線上發(fā)布,從而在保證了更新的配置信息不會影響后續(xù)的審核和發(fā)布的過程的前提下,才將這些更新的配置信息進(jìn)行線上發(fā)布,提高了應(yīng)用發(fā)布后的穩(wěn)定性,減少了因為更新的配置信息不正確而導(dǎo)致應(yīng)用開發(fā)出錯的可能性,減少了配置項傳遞過程中的錯誤和產(chǎn)品發(fā)布的風(fēng)險。在本申請一個優(yōu)選實施方式中,如圖4所示,測試節(jié)點(diǎn)設(shè)備204包括:搭建單元402,用于根據(jù)第二配置項搭建測試環(huán)境;第二測試單元404,用于在搭建的測試環(huán)境下,響應(yīng)于輸入的測試命令對應(yīng)用進(jìn)行測試。在本申請一個優(yōu)選實施方式中,發(fā)布節(jié)點(diǎn)設(shè)備206還用于在根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布之后,將更新后的配置信息合并到與應(yīng)用的主干程序?qū)?yīng)的主干配置信息中,其中,經(jīng)第一配置項和第二配置項更新后的配置信息與應(yīng)用的分支程序?qū)?yīng)。在上述優(yōu)選實施方式中,將主干程序作為一個穩(wěn)定的、可發(fā)布的程序,當(dāng)需要向該主干程序中增加分支程序時,先對增加的分支程序進(jìn)行單獨(dú)檢測,當(dāng)該分支程序獨(dú)立運(yùn)行正常后,將該分支程序預(yù)合并到主干程序中進(jìn)行聯(lián)合測試,如果聯(lián)合測試的結(jié)果正常,再將分支程序合并到主干程序中,并將經(jīng)過測試的、與分支程序?qū)?yīng)的配置信息在應(yīng)用正式發(fā)布之后加入到主干配置信息中,從而保證了程序發(fā)布的穩(wěn)定性,避免了因為分支程序配置的不合理而導(dǎo)致整個主干程序的發(fā)布出現(xiàn)問題。實施例2在圖2-圖4所示的系統(tǒng)的基礎(chǔ)上,本申請?zhí)峁┝艘环N優(yōu)選的配置信息的更新方法。如圖5所示,該方法可以包括如下步驟:S502:配置管理中心接收應(yīng)用發(fā)布過程中的開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項。也就是說,應(yīng)用發(fā)布過程中的開發(fā)節(jié)點(diǎn)設(shè)備向配置管理中心提交配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項;S504:配置管理中心接收應(yīng)用發(fā)布過程中的測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單是測試節(jié)點(diǎn)設(shè)備將待更新的第二配置項記錄在從配置管理中心中獲取的由開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單中得到的配置修改申請單,第二配置項為測試節(jié)點(diǎn)設(shè)備在進(jìn)行當(dāng)前測試時采用的配置項。也就是說,應(yīng)用發(fā)布過程中的測試節(jié)點(diǎn)設(shè)備從配置管理中心中獲取配置修改申請單,將當(dāng)前測試采用的配置項作為待更新的第二配置項記錄在配置修改申請單,并將記錄有第一配置項和第二配置項的配置修改申請單提交給配置管理中心;S506:配置管理中心響應(yīng)于應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。也就是說,應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。在上述優(yōu)選實施方式 中,開發(fā)節(jié)點(diǎn)設(shè)備、測試節(jié)點(diǎn)設(shè)備、以及發(fā)布節(jié)點(diǎn)設(shè)備通過配置管理中心對配置項進(jìn)行統(tǒng)一的管理,解決了現(xiàn)有技術(shù)中多個環(huán)境中的配置信息不能實時地同步,從而導(dǎo)致在應(yīng)用發(fā)布時出現(xiàn)故障的問題,本申請達(dá)到了配置項的統(tǒng)一管理,實現(xiàn)了多個環(huán)境配置信息的同步,提高了配置信息的維護(hù)效率,降低了應(yīng)用發(fā)布發(fā)生故障的概率。在本申請一個優(yōu)選實施方式中,可以通過如圖6所示的步驟進(jìn)行當(dāng)前測試,具體包括:S602:根據(jù)第二配置項搭建測試環(huán)境;S604:在搭建的測試環(huán)境下,響應(yīng)于輸入的測試命令對應(yīng)用進(jìn)行測試。在上述優(yōu)選實施方式中,通過第二配置項搭建測試環(huán)境,可以有效判斷配置項的配置是否合理。在本申請一個優(yōu)選實施方式中,在應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備根據(jù)配置修改申請單中的第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后(即,在所述配置管理中心響應(yīng)于所述應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)所述配置修改申請單中的所述第一配置項和所述第二配置項對所述配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后),如圖7所示,本實施例中的配置信息的更新方法還可以包括:S702:發(fā)布節(jié)點(diǎn)設(shè)備將更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備;S704:發(fā)布節(jié)點(diǎn)設(shè)備在接收到審核節(jié)點(diǎn)設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)更新后的配置信息對應(yīng)用進(jìn)行離線自動測試;S706:當(dāng)所述離線自動測試結(jié)果正常后,根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布。在上述優(yōu)選實施方式中,在對預(yù)設(shè)的配置信息進(jìn)行更新之后,通過審核節(jié)點(diǎn)設(shè)備對更新的配置信息項進(jìn)行審核,在審核通過以后,對應(yīng)用進(jìn)行測試,在測試成功以后才將更新后的配置信息在線上發(fā)布,從而在保證了更新的配置信息不會影響后續(xù)的審核和發(fā)布的過程的前提下,才將這些更新的配置信息進(jìn)行線上發(fā)布,提高了應(yīng)用發(fā)布后的穩(wěn)定性,減少了因為更新的配置信息不正確而導(dǎo)致應(yīng)用開發(fā)出錯的可能性,減少了配置項傳遞過程中的錯誤和產(chǎn)品發(fā)布的風(fēng)險。優(yōu)選地,上述實施例中的離線自動測試包括如下步驟:將與分支程序?qū)?yīng)的更新后的配置信息預(yù)合并到與主干程序?qū)?yīng)的主干配置信息中,并將分支程序與主干程序進(jìn)行合并,根據(jù)合并后的配置信息對合并了分支程序的主干程序進(jìn)行聯(lián)合測試。在本申請一個優(yōu)選實施方式中,經(jīng)第一配置項和第二配置項更新后的配置信息與應(yīng)用的分支程序是對應(yīng)關(guān)系,在根據(jù)更新后的配置信息對應(yīng)用進(jìn)行線上發(fā)布之后,再將更新后的配置信息合并到與應(yīng)用的主干程序?qū)?yīng)的主干配置信息中。在上述優(yōu)選實施方式中,將主干程序作為一個穩(wěn)定的、可發(fā)布的程序,當(dāng)需要向該主干程序中增加分支程序時,先對增加的分支程序進(jìn)行單獨(dú)檢測,當(dāng)該分支程序獨(dú)立運(yùn)行正常后,將該分支程序預(yù)合并到主干程序中進(jìn)行聯(lián)合測試,如果聯(lián)合測試的結(jié)果正常,再將分支程序合并到主干程序中,并將經(jīng)過測試的、與分支程序?qū)?yīng)的配置信息在應(yīng)用正式發(fā)布之后加入到主干配置信息中,從而保證了程序發(fā)布的穩(wěn)定性,避免了因為分支程序配置的不合理而導(dǎo)致整個主干程序的發(fā)布出現(xiàn)問題。實施例3本申請?zhí)峁┝艘环N優(yōu) 選的實施例來進(jìn)一步對本申請進(jìn)行解釋,但是值得注意的是,該優(yōu)選實施例只是為了更好的描述本申請,并不構(gòu)成對本申請不當(dāng)?shù)南薅?。?yīng)用的開發(fā)一般包括:開發(fā)階段、測試階段、審核階段以及發(fā)布階段4個階段,如圖8所示,這4個階段的配置項信息的更新的步驟包括:I)開發(fā)階段主要包括:S802:開發(fā)節(jié)點(diǎn)設(shè)備創(chuàng)建一個應(yīng)用,并創(chuàng)建配置修改申請單,其中,配置修改申請單是應(yīng)用配置信息的一個具體實現(xiàn),代表某次修改的配置信息片段,一次項目或者是一次小的應(yīng)用需求對應(yīng)一份配置修改申請單。S804:開發(fā)節(jié)點(diǎn)設(shè)備將待更新的配置項添加到配置信息修改申請單中,配置項包括:配置項標(biāo)識和配置項的值,其中,一個配置項值對應(yīng)一個配置項標(biāo)識,配置項標(biāo)識在開發(fā)階段、測試階段、審核階段和發(fā)布階段是相同的,而配置項值根據(jù)階段的不同對應(yīng)多個不同的值。S806:開發(fā)節(jié)點(diǎn)設(shè)備將攜帶有待更新的配置項的配置修改申請單提交到配置管理中心,其中,配置項是配置修改申請單中某一項對應(yīng)的配置信息,優(yōu)選地,配置管理中心的配置修改申請單信息是被測試階段的測試節(jié)點(diǎn)設(shè)備、開發(fā)階段的開發(fā)節(jié)點(diǎn)設(shè)備以及發(fā)布階段的發(fā)布節(jié)點(diǎn)設(shè)備所共享的。2)測試階段主要包括:S808:測試節(jié)點(diǎn)設(shè)備開發(fā)提測,開發(fā)階段接收后提交測試階段進(jìn)行測試;S810:測試節(jié)點(diǎn)設(shè)備修改測試環(huán)境配置信息,并從配置管理中心獲取配置修改申請單,并將本次測試依賴的測試環(huán)境值作為待更新的配置項記錄在配置修改申請單中,這時,配置修改申請單中有開發(fā)節(jié)點(diǎn)設(shè)備待更新的配置項以及測試節(jié)點(diǎn)設(shè)備待更新的配置項;S812:測試節(jié)點(diǎn)設(shè)備搭建測試環(huán)境。3)審核階段主要包括:S814:測試結(jié)束后,申核節(jié)點(diǎn)設(shè)備提交預(yù)發(fā)布。S816:審核節(jié)點(diǎn)設(shè)備從配置管理中心獲取有開發(fā)節(jié)點(diǎn)設(shè)備和測試節(jié)點(diǎn)設(shè)備待更新的配置項的配置信息,應(yīng)用管理員對更新后的配置信息中的配置項以及配置項的值進(jìn)行審核。S818:測試應(yīng)用管理員審核,主要審核自動化測試環(huán)境值及配置項,在審核通過后,審核節(jié)點(diǎn)設(shè)備向發(fā)布節(jié)點(diǎn)設(shè)備返回用于指示的更新響應(yīng)消息。4)發(fā)布階段主要包括:S820:發(fā)布節(jié)點(diǎn)設(shè)備響應(yīng)于該更新響應(yīng)消息,進(jìn)行預(yù)發(fā)布打包并配置發(fā)布包,根據(jù)配置修改申請單中的開發(fā)節(jié)點(diǎn)設(shè)備的待更新的配置項和測試節(jié)點(diǎn)設(shè)備的待更新的配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,優(yōu)選地,這個過程可以稱作預(yù)合并,預(yù)設(shè)的配置信息是主干配置信息的一個備份配置信息。因為應(yīng)用在新版本的開發(fā)過程中,對配置信息的變更需要一份變更后的配置信息清單,然而在開發(fā)和測試等環(huán)節(jié)中,這些配置信息都不是穩(wěn)定和最終的版本的配置信息,因此需要將歷史的主干配置信息同目前修改的信息做預(yù)合并,從而生成臨時的配置信息分支。下面對預(yù)合并做具體的描述,值得注意的是,這只是為了更好的說明本申請,并不構(gòu)成對本申請不當(dāng)?shù)南薅ā?yōu) 選地,配置項修改申請單中對配置信息中配置項更新的標(biāo)識為:新增標(biāo)志為A、修改標(biāo)志為M、刪除標(biāo)志為D,主干配置信息配置項標(biāo)志為T??梢酝ㄟ^如下步驟實現(xiàn)預(yù)合并:Sl-1:獲取本次預(yù)合并的目標(biāo)配置項修改申請單,如圖9所示,也就是圖9中的配置項修改申請單,其中記錄有配置項標(biāo)識(KEY SEGMENT),以及開發(fā)環(huán)境、測試環(huán)境以及線上環(huán)境對應(yīng)的配置項值(VALUE AEGMENT),也就是有測試節(jié)點(diǎn)設(shè)備和開發(fā)節(jié)點(diǎn)設(shè)備待更新配置項的配置項修改申請單。S1-2:獲取本次預(yù)合并的目標(biāo)主干配置信息,也就是圖9所示的主干配置信息,其中記錄有配置項標(biāo)識(KEY TRUNK),以及開發(fā)環(huán)境、測試環(huán)境以及線上環(huán)境對應(yīng)的配置項值(VALUE TRUNK),如圖9所示,主干信息中的開發(fā)環(huán)境的配置項值就是開發(fā)時共享應(yīng)用配置信息清單,測試環(huán)境的配置項值就是測試自動化環(huán)境配置信息清單,線上環(huán)境配置項值就是線上環(huán)境配置信息清單,優(yōu)選地,可以基于REST風(fēng)格的配置資源標(biāo)識方式,例如,應(yīng)用在新需求開發(fā)、測試時,產(chǎn)生配置信息修改,需要獲取配置項修改申請單中配置信息同原有配置信息合并后的配置信息時,開發(fā)環(huán)境對應(yīng):http://www.XXX.com/conf ig/dev/appname/formid ;測試環(huán)境對應(yīng):http://www.XXX.com/config/test/appname/formid ;線上環(huán)境對應(yīng):http://www.XXX.com/ conf ig/onl ine/appname/formido 以此主干配置信息在內(nèi)存中建立臨時配置信息清單。S1-3:遍歷目標(biāo)配置項修改申請單對臨時配置信息清單進(jìn)行更新,如圖10所示,如果配置項標(biāo)識對應(yīng)的標(biāo)志為A,則將配置信息加入臨時配置信息清單中,如果標(biāo)志為D,則查找臨時配置信息清單若發(fā)現(xiàn)則將其移除,如果標(biāo)志為M,則查找并替換臨時配置信息清單。S1-4:輸出臨時配置清單為動態(tài)分支,動態(tài)分支是預(yù)合并的結(jié)果,是主干配置信息同配置項修改申請單臨時合并的結(jié)果,是動態(tài)生成的并且還沒有持久化。S822:發(fā)布節(jié)點(diǎn)設(shè)備根據(jù)更新后的配置信息中測試環(huán)境的配置信息對應(yīng)用進(jìn)行離線自動測試;優(yōu)選地,也可以是審核節(jié)點(diǎn)設(shè)備通過配置中心獲取實時可用的配置信息,自動搭建環(huán)境定時跑自動化測試。S824:當(dāng)離線自動測試結(jié)果為正常時,發(fā)布節(jié)點(diǎn)設(shè)備對應(yīng)用進(jìn)行正式發(fā)布,根據(jù)更新后的配置信息將應(yīng)用正式部署到生產(chǎn)環(huán)境中。S826:發(fā)布節(jié)點(diǎn)設(shè)備將開發(fā)節(jié)點(diǎn)設(shè)備和測試節(jié)點(diǎn)設(shè)備待更新的配置項中通過審核和測試的配置信息合并到主干配置信息中。在本申請各個實施方式中,如圖11所示,一個企業(yè)級的應(yīng)用的功能組件根據(jù)環(huán)境的不同、版本的不同有多份應(yīng)用配置信息管理,以及流程控制和系統(tǒng)管理。其中,流程控制包括:審批流程控制,用于控制配置項修改的審批流程;審批人設(shè)置,用于設(shè)置流程環(huán)節(jié)審批人。系統(tǒng)管理包括:權(quán)限控制和用戶管理。配置信息管理包括但不限于以下至少之一:I)應(yīng)用管理,用于維護(hù)拉入系統(tǒng)管理的企業(yè)應(yīng)用信息,包括:應(yīng)用名稱、應(yīng)用標(biāo)識、以及應(yīng)用的描述信息等;2)配置項管理, 用于維護(hù)對應(yīng)用的管理所對應(yīng)的配置項信息,包括:配置項名稱、配置項標(biāo)識,配置項描述信息、開發(fā)環(huán)境下的配置項的具體值、測試環(huán)境下的配置項的具體值以及線上環(huán)境下的配置項的具體值等,其中,每個配置項信息對應(yīng)一個配置項標(biāo)識,無論在哪種環(huán)境下配置項標(biāo)識都是系統(tǒng),從而有利于統(tǒng)一維護(hù)和管理,每個配置項標(biāo)識對應(yīng)多個配置項的具體值。3)配置信息版本控制,維護(hù)配置信息的版本信息、新增、修改、刪除日志,并提供配置項信息的版本合并、回滾功能。4)開放接口,提供統(tǒng)一對外服務(wù)的配置信息獲取接口,以及同外部系統(tǒng)對接的接口,例如流程信息、配置版本信息等。通過以上的描述可知,本申請具有以下優(yōu)勢:I)通過共性配置項的維護(hù),解決了相關(guān)技術(shù)中對配置信息的修改的不能及時被開發(fā)的其他環(huán)節(jié)所獲知,當(dāng)數(shù)據(jù)庫鏈接的維護(hù),cache等中間件地址的維護(hù)等共性的信息發(fā)生變更時,需要各個環(huán)節(jié)進(jìn)行單獨(dú)的維護(hù)的問題,本申請中開發(fā)環(huán)境、測試環(huán)境、線上環(huán)境只需維護(hù)一次便可以達(dá)到全局共享,提升了工作效率,減少了環(huán)境搭建工作量。2)開發(fā)環(huán)境、測試環(huán)境以及線上環(huán)境通過統(tǒng)一的配置項標(biāo)識對配置項進(jìn)行維護(hù),從而減少了不同環(huán)境間配置信息項的傳遞帶來的偏差。3)流程化管理配置信息,從配置信息在開發(fā)階段中產(chǎn)生,到測試過程中驗證正確性,最后到發(fā)布過程中上線發(fā)布,都是基于配置修改申請單的形式在開發(fā)、測試、發(fā)布等各個環(huán)節(jié)中流動,并結(jié)合相關(guān)人員的審批環(huán)節(jié),保證配置清單的正確性。減少了手工傳遞的差錯,避免了因無統(tǒng)一的管理人員而造成的配置信息泛濫的局面。4)通過配置管理中心對配置信息的共享,可以為其他內(nèi)部系統(tǒng)提供相關(guān)的配置信息,比如,為自動化測試系統(tǒng)提供環(huán)境搭建所需的配置信息,為持續(xù)集成自動構(gòu)件系統(tǒng)提供配置信息等。顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本申請的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本申請不限制于任何特定的硬件和軟件結(jié)合。以上所述僅為本申請 的優(yōu)選實施例而已,并不用于限制本申請,對于本領(lǐng)域的技術(shù)人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種配置信息的更新方法,其特征在于,包括: 配置管理中心接收應(yīng)用發(fā)布過程中的開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,所述配置修改申請單中記錄有待更新的第一配置項; 所述配置管理中心接收所述應(yīng)用發(fā)布過程中的測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,所述測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單是所述測試節(jié)點(diǎn)設(shè)備將待更新的第二配置項記錄在從所述配置管理中心中獲取的由所述開發(fā)節(jié)點(diǎn)設(shè)備提交的所述配置修改申請單中得到的配置修改申請單,所述第二配置項為所述測試節(jié)點(diǎn)設(shè)備在進(jìn)行當(dāng)前測試時采用的配置項; 所述配置管理中心響應(yīng)于所述應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)所述配置修改申請單中的所述第一配置項和所述第二配置項對所述配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,所述更新后的配置信息用于線上發(fā)布所述應(yīng)用。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述配置管理中心響應(yīng)于所述應(yīng)用發(fā)布過程中的發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)所述配置修改申請單中的所述第一配置項和所述第二配置項對所述配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后,還包括: 所述發(fā)布節(jié)點(diǎn)設(shè)備將所述更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備; 所述發(fā)布節(jié)點(diǎn)設(shè)備在接收到所述審核節(jié)點(diǎn)設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行離線自動測試。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行離線自動測試之后,還包括: 若所述離線自動測試結(jié)果正常,則根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,通過如下步驟進(jìn)行所述當(dāng)前測試: 根據(jù)所述第二配置項搭建測試環(huán)境; 在搭建的所述測試環(huán)境下,響應(yīng)于輸入的測試命令對所述應(yīng)用進(jìn)行測試。
5.根據(jù)權(quán)利要求1至4中任一項所述的方法,其特征在于,經(jīng)所述第一配置項和所述第二配置項更新后的配置信息與所述應(yīng)用的分支程序?qū)?yīng)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,在根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布之后,還包括: 將所述更新后的配置信息合并到與所述應(yīng)用的主干程序?qū)?yīng)的主干配置信息中。
7.一種配置信息的更新系統(tǒng),其特征在于,包括: 開發(fā)節(jié)點(diǎn)設(shè)備,用于在應(yīng)用發(fā)布過程中向配置管理中心提交配置修改申請單,其中,所述配置修改申請單中記錄有待更新的第一配置項; 測試節(jié)點(diǎn)設(shè)備,用于在所述應(yīng)用發(fā)布過程中從所述配置管理中心中獲取所述配置修改申請單,將當(dāng)前測試采用的配置項作為待更新的第二配置項記錄在所述配置修改申請單,并將記錄有所述第一配置項和所述第二配置項的所述配置修改申請單提交給所述配置管理中心; 發(fā)布節(jié)點(diǎn)設(shè)備,用于在所述應(yīng)用發(fā)布過程中根據(jù)所述配置修改申請單中的所述第一配置項和所述第二配置項對所述配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,所述更新后的配置信息用于線上發(fā)布所述應(yīng)用。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述發(fā)布節(jié)點(diǎn)設(shè)備包括: 提交單元,用于在對所述配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新之后,將更新后的配置信息提交給審核節(jié)點(diǎn)設(shè)備; 第一測試單元,用于在接收到所述審核節(jié)點(diǎn)設(shè)備返回的用于指示更新的響應(yīng)消息之后,根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行離線自動測試。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,還包括:所述審核節(jié)點(diǎn)設(shè)備; 所述審核節(jié)點(diǎn)設(shè)備包括: 接收單元,用于接收所述發(fā)布節(jié)點(diǎn)設(shè)備提交的更新后的配置信息; 響應(yīng)單元,用于響應(yīng)所述更新后的配置信息向所述發(fā)布節(jié)點(diǎn)設(shè)備發(fā)送指示更新的響應(yīng)消息。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,還包括: 發(fā)布節(jié)點(diǎn)設(shè)備,用于在所述測試單元根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行離線自動測試之后,當(dāng)所述離線自動測試結(jié)果正常,根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布。
11.根據(jù)權(quán)利要求7所述的系統(tǒng),其特征在于,所述測試節(jié)點(diǎn)設(shè)備包括: 搭建單元,用于根據(jù)所 述第二配置項搭建測試環(huán)境; 第二測試單元,用于在搭建的所述測試環(huán)境下,響應(yīng)于輸入的測試命令對所述應(yīng)用進(jìn)行測試。
12.根據(jù)權(quán)利要求10所述的系統(tǒng),其特征在于,所述發(fā)布節(jié)點(diǎn)設(shè)備包括: 合并單元,用于在根據(jù)所述更新后的配置信息對所述應(yīng)用進(jìn)行線上發(fā)布之后,將所述更新后的配置信息合并到與所述應(yīng)用的主干程序?qū)?yīng)的主干配置信息中,其中,經(jīng)所述第一配置項和所述第二配置項更新后的配置信息與所述應(yīng)用的分支程序?qū)?yīng)。
全文摘要
本申請公開了一種配置信息的更新方法和系統(tǒng),其中,該方法包括配置管理中心接收開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,配置修改申請單中記錄有待更新的第一配置項;配置管理中心接收測試節(jié)點(diǎn)設(shè)備提交的配置修改申請單,其中,該配置修改申請單是測試節(jié)點(diǎn)設(shè)備將待更新的第二配置項記錄在開發(fā)節(jié)點(diǎn)設(shè)備提交的配置修改申請單中得到的配置修改申請單,第二配置項為測試節(jié)點(diǎn)設(shè)備在進(jìn)行當(dāng)前測試時采用的配置項;配置管理中心響應(yīng)于發(fā)布節(jié)點(diǎn)設(shè)備的請求根據(jù)第一配置項和第二配置項對配置管理中心中預(yù)設(shè)的配置信息進(jìn)行更新,其中,更新后的配置信息用于線上發(fā)布應(yīng)用。本申請解決配置信息不能實時地同步的問題,實現(xiàn)了多個環(huán)境配置信息的同步。
文檔編號H04L12/26GK103220163SQ201210018309
公開日2013年7月24日 申請日期2012年1月19日 優(yōu)先權(quán)日2012年1月19日
發(fā)明者汪小容 申請人:阿里巴巴集團(tuán)控股有限公司