SpringCloud中的Eureka集群配置方法
微服務(wù)框架中最為重要的就是注冊(cè)中心,如果只是單注冊(cè)中心,一旦出現(xiàn)問題,容易導(dǎo)致整個(gè)微服務(wù)環(huán)境不可用,所以建議注冊(cè)中心集群。
目前SpringCloud框架中使用Eureka作為注冊(cè)中心,本文簡(jiǎn)單介紹一下Eureka的集群配置,主要的思路就是相互注冊(cè),形成一組相互注冊(cè)的注冊(cè)中心,達(dá)到高可用的效果。
一般來說集群配置至少需要2臺(tái)以上的服務(wù)器,這里是采用本機(jī)測(cè)試,道理是一樣的。
集群配置
依賴配置
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!-- 管理依賴 --> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Finchley.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> </dependencies> <repositories> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/milestone</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
注冊(cè)中心配置
第一個(gè)注冊(cè)中心配置
# 服務(wù)端口號(hào) server: port: 8100 # 服務(wù)名稱必須一樣 spring: application: name: app-eureka eureka: instance: # 注冊(cè)中心ip地址(本機(jī)地址) hostname: 127.0.0.1 client: service-url: # 注冊(cè)地址,注冊(cè)到9100的注冊(cè)中心,如果是三臺(tái)以上,一樣可以在這邊添加 # 主要是實(shí)現(xiàn)相互注冊(cè) defaultZone: http://127.0.0.1:9100/eureka/ # 將自己注冊(cè)給自己的注冊(cè)中心 register-with-eureka: true # 檢索自己服務(wù)信息 fetch-registry: false
第二個(gè)注冊(cè)中心配置
# 服務(wù)端口號(hào) server: port: 9100 # 服務(wù)名稱必須一樣 spring: application: name: app-eureka eureka: instance: # 注冊(cè)中心ip地址(本機(jī)地址) hostname: 127.0.0.1 client: service-url: # 注冊(cè)地址,注冊(cè)到8100的注冊(cè)中心,如果是三臺(tái)以上,一樣可以在這邊添加 # 主要是實(shí)現(xiàn)相互注冊(cè) defaultZone: http://127.0.0.1:8100/eureka/ # 將自己注冊(cè)給自己的注冊(cè)中心 register-with-eureka: true # 檢索自己服務(wù)信息 fetch-registry: false
啟動(dòng)
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; @SpringBootApplication @EnableEurekaServer //開啟EurekaServer服務(wù) 開啟注冊(cè)中心 public class AppEureka { public static void main(String[] args) { SpringApplication.run(AppEureka.class, args); } }
客戶端配置
# 訂單服務(wù)的端口號(hào) server: port: 8001 # 服務(wù)別名 -- 服務(wù)注冊(cè)到注冊(cè)中心名稱 spring: application: name: app-order eureka: client: service-url: # 當(dāng)前訂單服務(wù)注冊(cè)到eureka服務(wù)地址,兩個(gè)注冊(cè)中心都注冊(cè) defaultZone: http://localhost:8100/eureka,http://localhost:9100/eureka # 需要將服務(wù)注冊(cè)到eureka register-with-eureka: true # 需要檢索服務(wù) fetch-registry: true
客戶端啟動(dòng)
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; import org.springframework.context.annotation.Bean; import org.springframework.web.client.RestTemplate; @SpringBootApplication @EnableEurekaClient public class AppOrder { public static void main(String[] args) { SpringApplication.run(AppOrder.class, args); } }
總結(jié)
以上即是Eureka的集群配置,還是比較簡(jiǎn)單易懂的。
到此這篇關(guān)于SpringCloud中的Eureka的集群配置的文章就介紹到這了,更多相關(guān)SpringCloud Eureka集群配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java獲取網(wǎng)頁(yè)數(shù)據(jù)步驟方法詳解
這篇文章主要介紹了Java獲取網(wǎng)頁(yè)數(shù)據(jù)步驟方法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03Java Caledar類(日歷類)如何判斷本周周數(shù)
這篇文章主要介紹了Java Caledar類(日歷類)如何判斷本周周數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06java集合類遍歷的同時(shí)如何進(jìn)行刪除操作
這篇文章主要介紹了java集合類遍歷的同時(shí)如何進(jìn)行刪除操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09java中javamail發(fā)送帶附件的郵件實(shí)現(xiàn)方法
這篇文章主要介紹了java中javamail發(fā)送帶附件的郵件實(shí)現(xiàn)方法,較為詳細(xì)的分析了JavaMail發(fā)送郵件的用法,是非常實(shí)用的技巧,需要的朋友可以參考下2015-01-01java比較兩個(gè)list是否相同equals的代碼詳解
在本篇文章里小編給大家分享的是關(guān)于java比較兩個(gè)list是否相同equals的代碼詳解,有需要的朋友們可以參考學(xué)習(xí)下。2020-02-02String?concat(String?str)使用小結(jié)
這篇文章主要介紹了String?concat(String?str)使用小結(jié),在了解concat()之前,首先需要明確的是String的兩點(diǎn)特殊性,一是長(zhǎng)度不可變二是值不可變,本文給大家詳細(xì)講解,需要的朋友可以參考下2022-11-11