System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現(xiàn)步驟摘要】
本申請涉及應用程序,特別是涉及一種灰度發(fā)布方法、裝置、計算機設備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品。
技術介紹
1、在現(xiàn)代應用程序的開發(fā)過程中,微服務架構(gòu)因高內(nèi)聚低耦合、易于擴展、快速部署等優(yōu)點,被廣泛應用于各類大型系統(tǒng)中。隨著業(yè)務需求的增長,微服務版本更新變得越來越頻繁。在新版本的微服務(增量微服務)的更新過程中,需要采用灰度發(fā)布方法來發(fā)布增量微服務。
2、目前的灰度發(fā)布方法,將一個增量微服務部署到灰度環(huán)境中,并將各請求進行分配至增量微服務或增量微服務對應的正常微服務處。通過分配至增量微服務的請求測試增量微服務,得到測試結(jié)果。在測試結(jié)果為測試通過的情況下,發(fā)布該增量微服務。
3、然而,目前的灰度發(fā)布方法,當存在大量增量微服務需要更新時,需要一個個測試并發(fā)布微服務,會消耗大量時間。因此,目前的灰度發(fā)布方法的效率較低。
技術實現(xiàn)思路
1、基于此,有必要針對上述技術問題,提供一種能夠灰度發(fā)布方法、裝置、計算機設備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品。
2、第一方面,本申請?zhí)峁┝艘环N灰度發(fā)布方法,包括:
3、基于隔離策略對各業(yè)務請求進行分配;
4、根據(jù)分配后的灰度類型的業(yè)務請求依次測試灰度環(huán)境中的增量微服務,得到測試結(jié)果;
5、在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。
6、在其中一個實施例中,所述隔離策略包含物理隔離策略和邏輯增量隔離策略;所述基于隔離策略對各業(yè)務請求進行分配,包括:
>7、基于所述物理隔離策略確定每一業(yè)務請求對應的目標環(huán)境,并將所述業(yè)務請求分配至所述目標環(huán)境中的微服務,或者,基于所述邏輯增量隔離策略確定每一業(yè)務請求的下一跳微服務,并將所述業(yè)務請求分配至所述下一跳微服務;所述物理隔離策略對應的灰度環(huán)境中包含正常微服務和灰度微服務;所述邏輯增量隔離策略對應的灰度環(huán)境中包含所述灰度微服務。
8、在其中一個實施例中,所述基于所述物理隔離策略確定每一業(yè)務請求對應的目標環(huán)境,并將所述業(yè)務請求分配至所述目標環(huán)境中的微服務,包括:
9、根據(jù)預設的灰度規(guī)則,確定每一業(yè)務請求的請求類型;
10、若所述請求類型為灰度類型,確定所述業(yè)務請求對應的目標環(huán)境為灰度環(huán)境,并將所述業(yè)務請求分配至灰度環(huán)境的微服務中,以使所述灰度環(huán)境中的正常微服務和增量微服務對所述業(yè)務請求進行處理,得到第一處理結(jié)果;
11、若所述請求類型為正常類型,確定所述業(yè)務請求對應的目標環(huán)境為正常環(huán)境,并將所述業(yè)務請求分配至正常環(huán)境的正常微服務中,以使所述正常微服務對所述業(yè)務請求進行處理,得到第二處理結(jié)果。
12、在其中一個實施例中,所述基于所述邏輯增量隔離策略確定每一業(yè)務請求的下一跳微服務,并將所述業(yè)務請求分配至所述下一跳微服務,包括:
13、針對每一業(yè)務請求,基于預設的灰度規(guī)則和微服務注冊表,確定所述業(yè)務請求的請求類型和目標業(yè)務類型;
14、基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務,并在所述微服務注冊表中確定所述下一跳微服務的地址;
15、基于所述下一跳微服務的地址,將所述業(yè)務請求分配給所述下一跳微服務。
16、在其中一個實施例中,所述基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務之前,所述方法還包括:
17、按照預設的時間周期,獲取全量微服務的業(yè)務類型、微服務地址、微服務環(huán)境和微服務版本;
18、根據(jù)各所述微服務的業(yè)務類型、微服務地址、微服務環(huán)境和微服務版本構(gòu)建微服務注冊表。
19、在其中一個實施例中,所述基于預設的灰度規(guī)則和微服務注冊表,確定所述業(yè)務請求的請求類型,包括:
20、若所述業(yè)務請求中存在灰度字段,基于所述灰度字段的值確定所述業(yè)務請求的請求類型;
21、若預設的灰度規(guī)則中存在白名單且所述業(yè)務請求中不存在灰度字段,基于所述白名單和所述業(yè)務請求中的地址確定所述業(yè)務請求的請求類型;
22、若預設的灰度規(guī)則中不存在白名單且所述業(yè)務請求中不存在灰度字段,基于所述業(yè)務請求中的歷史業(yè)務請求地址和所述微服務注冊表,判斷所述業(yè)務請求是否途徑增量微服務,得到判斷結(jié)果,并根據(jù)所述判斷結(jié)果確定所述業(yè)務請求的請求類型。
23、在其中一個實施例中,所述基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務,包括:
24、在微服務注冊表中的各微服務中篩選目標業(yè)務類型的各初始目標微服務;
25、若所述請求類型為灰度類型,將各所述初始目標微服務中的增量微服務確定為下一跳微服務;
26、若所述請求類型為正常類型,將各所述初始目標微服務中的正常微服務確定為下一跳微服務。
27、第二方面,本申請還提供了一種灰度發(fā)布裝置,包括:
28、分配模塊,用于基于隔離策略對各業(yè)務請求進行分配;
29、測試模塊,用于根據(jù)分配后的業(yè)務請求依次測試灰度環(huán)境中的增量微服務,得到測試結(jié)果;
30、發(fā)布模塊,用于在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。
31、第三方面,本申請還提供了一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執(zhí)行所述計算機程序時實現(xiàn)以下步驟:
32、基于隔離策略對各業(yè)務請求進行分配;
33、根據(jù)分配后的灰度類型的業(yè)務請求依次測試灰度環(huán)境中的增量微服務,得到測試結(jié)果;
34、在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。
35、第四方面,本申請還提供了一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)以下步驟:
36、基于隔離策略對各業(yè)務請求進行分配;
37、根據(jù)分配后的灰度類型的業(yè)務請求依次測試灰度環(huán)境中的增量微服務,得到測試結(jié)果;
38、在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。
39、第五方面,本申請還提供了一種計算機程序產(chǎn)品,包括計算機程序,該計算機程序被處理器執(zhí)行時實現(xiàn)以下步驟:
40、基于隔離策略對各業(yè)務請求進行分配;
41、根據(jù)分配后的灰度類型的業(yè)務請求依次測試?灰度環(huán)境中的增量微服務,得到測試結(jié)果;
42、在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。
43、上述灰度發(fā)布方法、裝置、計算機設備、計算機可讀存儲介質(zhì)和計算機程序產(chǎn)品,基于隔離策略對各業(yè)務請求進行分配;根據(jù)分配后的灰度類型的業(yè)務請求依次測試灰度環(huán)境中的增量微服務,得到測試結(jié)果;在所述測試結(jié)果為測試通過的情況下,發(fā)布所述增量微服務。采用本方法,通過隔離策略對各業(yè)務請求進行分配,能夠?qū)⒒叶阮愋偷臉I(yè)務請求精準分配至灰度環(huán)境中的增量微服務中,以使分配后的灰度類型的業(yè)務請求依次對灰度環(huán)境中的多個增量微服務進行測試本文檔來自技高網(wǎng)...
【技術保護點】
1.一種灰度發(fā)布方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述隔離策略包含物理隔離策略和邏輯增量隔離策略;所述基于隔離策略對各業(yè)務請求進行分配,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述物理隔離策略確定每一業(yè)務請求對應的目標環(huán)境,并將所述業(yè)務請求分配至所述目標環(huán)境中的微服務,包括:
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述邏輯增量隔離策略確定每一業(yè)務請求的下一跳微服務,并將所述業(yè)務請求分配至所述下一跳微服務,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務之前,所述方法還包括:
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于預設的灰度規(guī)則和微服務注冊表,確定所述業(yè)務請求的請求類型,包括:
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務,包括:
8.一種灰度發(fā)布裝置,其特征在于
9.一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器執(zhí)行所述計算機程序時實現(xiàn)權(quán)利要求1至7中任一項所述的方法的步驟。
10.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1至7中任一項所述的方法的步驟。
...【技術特征摘要】
1.一種灰度發(fā)布方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述隔離策略包含物理隔離策略和邏輯增量隔離策略;所述基于隔離策略對各業(yè)務請求進行分配,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述物理隔離策略確定每一業(yè)務請求對應的目標環(huán)境,并將所述業(yè)務請求分配至所述目標環(huán)境中的微服務,包括:
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述基于所述邏輯增量隔離策略確定每一業(yè)務請求的下一跳微服務,并將所述業(yè)務請求分配至所述下一跳微服務,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述基于所述目標業(yè)務類型和所述請求類型在所述微服務注冊表中篩選所述下一跳微服務之前,所...
【專利技術屬性】
技術研發(fā)人員:朱學軍,
申請(專利權(quán))人:中電金信數(shù)字科技集團股份有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。