0-前言
在spring cloud微服務架構中,基本上每個拆分的微服務都會部署多個運行實體,這些運行實體,配置基本都是一樣的,不同的是少數配置,比如埠,而這些不同的配置又是必不可少的
那我們怎么來部署同一個微服務的多個不同實體呢,
總不能改改組態檔 --編譯--發布一個一個來吧,幾十幾百個實體那得累死頭牛
也不能一個實體一個組態檔吧,那組態檔也堆成山,改一個改到累死頭牛
還有些人把組態檔從jar包剝離,有改動時那也一個個改,還是累死頭牛;
1-如何拆分
我們基本上都用spring cloud config server 來管理組態檔,那怎么來拆分呢,正確的做法應該是:
1、抽離共同的配置項放到spring cloud config server管理的組態檔application.yml中,
2、少數每個實體不同的配置項放在專案的bootstrap.yml中,比如:埠號、機器編號等
3、bootstrap.yml中不同的配置項作為啟動引數傳入:
java -jar -Xms256m -Xmx512m -Dserver.port=8099 -Dserver.workId=1 -Dserver.datacenterId=1 anson.jar 上面的實體啟動時,設定了不同的埠、datacenterId、workId,這三個是不同實體不同設定的,
這樣,我們的同一個微服務就只有一套組態檔,部署多少是實體都不需要變動,只需要在啟動實體時傳入設定即可;
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/26043.html
標籤:架構設計
上一篇:springcloud vue.js 微服務 分布式 activiti作業流 前后分離 shiro權限 集成代碼生成器
