SpringBoot項目,使用SpringCloud搭建高可用服務注冊中心

 2023-12-06 阅读 31 评论 0

摘要:我們需要的,不僅僅是一個服務注冊中心而已,而是一個高可用服務注冊中心。 上篇博客中我們介紹了如何使用Spring Cloud搭建一個服務注冊中心,但是搭建好的服務注冊中心是一個單節點的服務注冊中心,這樣一旦發生了故障,那么整個服務就會癱瘓

我們需要的,不僅僅是一個服務注冊中心而已,而是一個高可用服務注冊中心。

上篇博客中我們介紹了如何使用Spring Cloud搭建一個服務注冊中心,但是搭建好的服務注冊中心是一個單節點的服務注冊中心,這樣一旦發生了故障,那么整個服務就會癱瘓,所以我們需要一個高可用的服務注冊中心,那么在Eureka中,我們通過集群來解決這個問題。Eureka Server的高可用實際上就是將自己作為服務向其他服務注冊中心注冊自己,這樣就會形成一組互相注冊的服務注冊中心,進而實現服務清單的互相同步,達到高可用的效果。

SpringBoot項目。OK,廢話不多說,我們就來看看如何搭建高可用注冊中心。

增加配置文件

在上篇博客中,我們創建了一個名叫eureka-server的服務注冊中心,那么在本文中,我將修改這個工程的配置文件,進而將其啟動多次。如下,我向這個工程中添加兩個配置文件application-peer1.properties和application-peer2.properties:

apache注冊服務、兩個配置文件的內容分別如下:

?

application-peer1.properties:

server.port=1111
eureka.instance.hostname=peer1
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://peer2:1112/eureka/

application-peer2.properties:

server.port=1112
eureka.instance.hostname=peer2
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://peer1:1111/eureka/

關于這兩個配置文件我說如下幾點:

1、在peer1的配置文件中,讓它的service-url指向peer2,在peer2的配置文件中讓它的service-url指向peer1

2、為了讓peer1和peer2能夠被正確的訪問到,我們需要在C:\Windows\System32\drivers\etc目錄下的hosts文件總添加兩行配置,如下:

127.0.0.1 peer1

127.0.0.1 peer2

3、由于peer1和peer2互相指向對方,實際上我們構建了一個雙節點的服務注冊中心集群

生成jar文件

OK,這次我們不直接從IDEA中啟動項目,而是先給工程生成jar文件,生成方式如下,雙擊package生成:

?

生成結果如下:

?

啟動項目

生成jar文件之后,我們在命令行通過java命令來啟動項目,在啟動的時候我們可以設置采用不同的配置文件來啟動項目,命令如下:

java -jar eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1 ?

java -jar eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer2

這兩行命令表示我們分別采用application-peer1.properties和application-peer2.properties兩個配置文件來啟動應用,OK,執行完這兩個命令之后,我們的服務注冊中心就啟動了兩個了,效果圖如下:

?

我們可以看到,在peer1的節點的DS replicas我們已經可以看到peer2節點了,在peer2的DS replicas中我們也可以看到peer1節點了。

OK,如此之后,我們的服務注冊中心集群就搭建好了,然后我們可以做一個簡單的測試。

測試

修改上篇博客中提到的provider項目的配置文件,如下:

spring.application.name=hello-service  
eureka.client.service-url.defaultZone=http://peer1:1111/eureka,http://peer2:1112/eureka

小伙伴們注意,我們在service-url中添加了兩個注冊中心地址,兩個地址中間用,隔開,OK,修改一下這里就可以了,接下來我們來啟動這個項目,啟動成功之后我們再去刷新http://localhost:1111和http://localhost:1112 兩個頁面,我們會發現我的服務提供者在這兩個服務注冊中心都注冊了,如下:

?

?

OK,至此,一個高可用的服務注冊中心我們就搭建成功了。

原文地址:

https://mp.weixin.qq.com/s/ie042Q_h8ppsroEjQ0bdgg

轉載于:https://www.cnblogs.com/xyhero/p/3a34679d2b3d134ef6fcd4493bd5a5ae.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/191089.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息