Eclipse啟動SpringCloud微服務集群的方法


1.說明

下面這篇文章介紹了Eureka Server集群的啟動方法,
SpringCloud創建Eureka模塊集群
是通過jar包啟動時指定配置文件的方式實現的。
現在只有Eureka Server模塊的源碼,
介紹在Eclipse中直接啟動Eureka Server集群的方式,
下面演示啟動兩個Eureka Server實例組成集群。

2.復制工程的方法

常見的方法是把Eureka Server模塊復制,
然后修改對應的application.yml配置參數,
然后右鍵模塊中的主啟動類,
分別啟動兩個模塊就可以了,
這個方法不多做介紹,
很多Spring Cloud教學視頻用的就是這種方式。

3.復制配置文件的方法

把對應的配置文件復制一遍,
然后修改其中的參數,
每個實例啟動時通過啟動參數,
指定使用不同的配置文件,
即可實現啟動一套代碼啟動兩個實例。
指定配置文件啟動的參數有兩個:
spring.profiles.active
spring.config.location
上面兩個參數效果下面會詳細說明,
而Eclipse中配置啟動參數的方式也有兩種,
可以在Program arguments中配置參數,
也可以在VM arguments中配置參數。

4.配置文件說明1

復制Eureka Server集群的配置文件:
application-dev-1.yml
application-dev-2.yml

eureka-server-1對應的application-dev-1.yml:

server:
  port: 7001
eureka:
  instance:
    hostname: eureka1
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://eureka1:7001/eureka,http://eureka2:7002/eureka
  server:
    enable-self-preservation: false

eureka-server-2對應的application-dev-2.yml:

server:
  port: 7002
eureka:
  instance:
    hostname: eureka2
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://eureka1:7001/eureka,http://eureka2:7002/eureka
  server:
    enable-self-preservation: false

文件名必須是application-{profile}.yml格式,
且必須在src/main/resource目錄下,
這樣才能使用spring.profiles.active參數指定profile,
從而指定使用不同的配置文件。

5.spring.profiles.active配置在Program arguments中

首先在Eclipse中打開Boot Dashboard,
會自動發現微服務eureka-server,
右鍵eureka-server模塊,
出現如下菜單:



點擊Duplicate Conifg創建出兩個Eureka Server的實例,
修改名稱為eureka-server-1和eureka-server-2,
然后就可以分別配置啟動參數。

右鍵eureka-server-1,
點擊Open Config修改配置,
在Arguemts下面新增Program arguments參數:
--spring.profiles.active=dev-1


點擊Apply應用,
然后Close關閉。

同樣右鍵eureka-server-2修改配置:
--spring.profiles.active=dev-2


配置好啟動參數后,
啟動eureka-server-1和eureka-server-2實例即可:


6.spring.profiles.active配置在VM arguments中

和上面的步驟一樣,
新建eureka-server-3和eureka-server-4實例,
右鍵eureka-server-3,
點擊Open Config修改配置,
在Arguemts下面新增VM arguments參數:
-Dspring.profiles.active=dev-1


點擊Apply應用,
然后Close關閉。

同樣右鍵eureka-server-4修改配置:
-Dspring.profiles.active=dev-2


配置好啟動參數后,
啟動eureka-server-3和eureka-server-4實例即可。

7.spring.config.location配置在Program arguments中

和上面的步驟一樣,
新建eureka-server-5和eureka-server-6實例修改配置。
由於spring.config.location可以指定任意路徑下的任意名稱的配置文件,
這里新建eureka-server-dev-5.yml和eureka-server-dev-6.yml,
然后放到src/main/resource下的cluster目錄下。

--spring.config.location=classpath:cluster/eureka-server-dev-5.yml


--spring.config.location=classpath:cluster/eureka-server-dev-6.yml


8.spring.config.location配置在VM arguments中

和上面的步驟一樣,
新建eureka-server-7和eureka-server-8實例:
-Dspring.config.location=classpath:cluster/eureka-server-dev-5.yml


-Dspring.config.location=classpath:cluster/eureka-server-dev-5.yml


對應的集群啟動成功:


9.只修改啟動參數的方法

不用復制配置文件,
只修改啟動參數的方法,
這種方式適合修改參數較少的情況,
比如一個微服務集群只有啟動端口不一樣,
其他參數都是一樣的,
可以使用同一個配置文件啟動,
然后在啟動參數中指定不同的端口即可。

和上面的步驟一樣,
新建server-1和server-2實例,
使用同一個application-dev.yml:

server:
  port: 7007

修改server-1和server-2配置:
--server.port=7009
--server.port=7010

上面參數配置在Program arguments中,
同樣也可以配置在VM arguments中:
-Dserver.port=7009
-Dserver.port=7010

10.參考文章

eclipse中創建的spring-boot項目在啟動時指定加載那一個配置文件的設置


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM