欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring?Cloud?Eureka?搭建?&?集群方式

 更新時間:2022年03月04日 09:57:03   作者:李多肉同學(xué)  
這篇文章主要介紹了Spring?Cloud?Eureka?搭建?&?集群方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

關(guān)于Eureka的詳細介紹已經(jīng)在上篇文章通俗的講了。

Eureka 本身是使用java 來開發(fā)的,Spring Cloud 使用 Spring Boot 技術(shù)對 Eureka進行了封裝,所以在Spring Cloud中使用Eureka非常方便,只需要引入spring-cloud-starter-netflix-eureka-server依賴即可,然后啟動即可。

1.Eureka 搭建

創(chuàng)建一個普通的Spring Boot項目,創(chuàng)建時添加Eureka依賴:

項目創(chuàng)建成功后,在項目啟動類上添加注解,標(biāo)記該項目是一個Eureka Server:

@SpringBootApplication
@EnableEurekaServer //開啟Eureka
public class EurekaApplication {
      public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class, args);
    } 
}

在application.properties 中配置:

# 給當(dāng)前服務(wù)取名
spring.application.name=eureka
#端口號
server.port=1111
#默認情況下,eureka server 也是一個普通的微服務(wù),所以當(dāng)它還是一個注冊中心的時候,會有兩層身份:
# 1.注冊中心
# 2.普通服務(wù),即當(dāng)前服務(wù)會自己注冊到自己上面來
# false 意為當(dāng)前項目不要注冊到注冊中心上
eureka.client.register-with-eureka=false
# 表示是否從 eureka server 上注冊信息
eureka.client.fetch-registry=false

然后啟動項目,項目啟動成功后在瀏覽器訪問:http://localhost:1111 就可以看到Eureka的管理頁面了。

如下:

 2. Eureka 集群

 使用了注冊中心后,所有的服務(wù)都要通過服務(wù)注冊中心來進行信息交換。服務(wù)注冊中心的穩(wěn)定性就非常重要了,一旦服務(wù)注冊中心掉線,會影響到整個系統(tǒng)的穩(wěn)定性。所以在實際開發(fā)中,Eureka一般都是以集群的形式出現(xiàn)的。

Eureka集群,實際上就是啟動多個Eureka實例, 多個Eureka實例之間互相注冊,互相同步數(shù)據(jù),共同組成一個Eureka集群。

搭建Eureka集群,首先要修改電腦的hosts文件(c:\windows\System32\drivers\etc\hosts),Linux上面搭建請點擊這篇文章查看。

 我這里為了方便操作,直接在第一步搭建 eureka 的 demo基礎(chǔ)上,在resources目錄下,再添加兩個配置文件,分別如下:

application-a.properties配置如下:

# 給當(dāng)前服務(wù)取名
spring.application.name=eureka
#端口號
server.port=1111
eureka.instance.hostname=eurekaA
#默認情況下,eureka server 也是一個普通的微服務(wù),所以當(dāng)它還是一個注冊中心的時候,會有兩層身份:
# 1.注冊中心
# 2.普通服務(wù),即當(dāng)前服務(wù)會自己注冊到自己上面來
# false 意為當(dāng)前項目不要注冊到注冊中心上
eureka.client.register-with-eureka=true
# 表示是否從 eureka server 上注冊信息
eureka.client.fetch-registry=true
# A服務(wù)注冊到B服務(wù)上( 配置多個的話后面用逗號隔開)
eureka.client.service-url.defaultZone=http://eurekaB:1112/eureka

application-b.properties配置如下:

# 給當(dāng)前服務(wù)取名
spring.application.name=eureka
#端口號
server.port=1112
eureka.instance.hostname=eurekaB
#默認情況下,eureka server 也是一個普通的微服務(wù),所以當(dāng)它還是一個注冊中心的時候,會有兩層身份:
# 1.注冊中心
# 2.普通服務(wù),即當(dāng)前服務(wù)會自己注冊到自己上面來
# false 意為當(dāng)前項目不要注冊到注冊中心上
eureka.client.register-with-eureka=true
# 表示是否從 eureka server 上注冊信息
eureka.client.fetch-registry=true
 
eureka.client.service-url.defaultZone=http://eurekaA:1111/eureka

配置完成后對當(dāng)前項目打包, 

打完包在IDEA命令行啟動兩個實例。兩個啟動命令分別如下:

java -jar eureka-0.0.1-SNAPSHOT.jar --spring.profiles.active=a
java -jar eureka-0.0.1-SNAPSHOT.jar --spring.profiles.active=b

注意:啟動第一個a之后你會發(fā)現(xiàn)控制臺報錯,是因為它一直發(fā)送心跳,而同時b還沒有上線,等b也啟動后錯誤即可消失。如果還報錯,那就是代碼的問題了。

 啟動成功后,就可以看到兩個服務(wù)之間互相注冊,共同組成一個集群。

如下圖:

2.1 Eureka 集群原理

官方的Eureka集群架構(gòu)圖:

在這個集群架構(gòu)中,Eureka Server 之間過 Replicate 進行數(shù)據(jù)同步,不同的 EurekaServer 之間不區(qū)分主從節(jié)點,所有節(jié)點都是平等的。

節(jié)點之間,通過置頂 serviceUrl 來相注冊,形成一個集群,進而提高節(jié)點的可用性。

在 Eureka Server 集群中,如果有某一個節(jié)點宕機,Eureka Client 會自動切到新的 Eureka Server 上。每一個Eureka Server,都會互相同步數(shù)據(jù)。

Eureka Server 的連接方式,可以是單線的,就是A——>b——>C,此時,A的數(shù)據(jù)也會和C之間相同步。

但是一般不建議這種寫法,在我們配置 serviceUrl 時,可以指定多個注冊地址,即A可以即注冊到B上,也可以同時注冊到C上。

Eureka分區(qū):

1.region:地理上的不同區(qū)域

2.zone:具體的機房

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • mybatis plus in方法使用說明

    mybatis plus in方法使用說明

    這篇文章主要介紹了mybatis plus in方法使用說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Spring Boot Debug調(diào)試過程圖解

    Spring Boot Debug調(diào)試過程圖解

    這篇文章主要介紹了Spring Boot Debug調(diào)試過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • java多態(tài)注意項小結(jié)

    java多態(tài)注意項小結(jié)

    面向?qū)ο蟮娜筇匦裕悍庋b、繼承、多態(tài)。從一定角度來看,封裝和繼承幾乎都是為多態(tài)而準(zhǔn)備的。今天通過本文給大家介紹java多態(tài)注意項總結(jié),感興趣的朋友一起看看吧
    2021-10-10
  • SpringBoot實現(xiàn)接口冪等性的4種方案

    SpringBoot實現(xiàn)接口冪等性的4種方案

    這篇文章主要介紹了SpringBoot實現(xiàn)接口冪等性的4種方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Springboot訪問html頁面步驟解析

    Springboot訪問html頁面步驟解析

    這篇文章主要介紹了Springboot訪問html頁面過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Java使用反射獲取list泛型過程淺析

    Java使用反射獲取list泛型過程淺析

    這篇文章主要介紹了Java使用反射獲取list泛型過程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-02-02
  • Java使用opencv識別二維碼的完整步驟

    Java使用opencv識別二維碼的完整步驟

    OpenMV是一個開源,低成本,功能強大的機器視覺模塊,下面這篇文章主要給大家介紹了關(guān)于Java使用opencv識別二維碼的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2021-09-09
  • servlet之session工作原理簡介_動力節(jié)點Java學(xué)院整理

    servlet之session工作原理簡介_動力節(jié)點Java學(xué)院整理

    這篇文章主要介紹了servlet之session工作原理簡介,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Java多文件以ZIP壓縮包導(dǎo)出的實現(xiàn)方法

    Java多文件以ZIP壓縮包導(dǎo)出的實現(xiàn)方法

    這篇文章主要為大家詳細介紹了Java多文件以ZIP壓縮包導(dǎo)出的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Java中對XML的解析詳解

    Java中對XML的解析詳解

    目前我知道的JAVA解析XML的方式有:DOM, SAX, StAX;如果選用這幾種,感覺還是有點麻煩;如果使用:JAXB(Java Architecture for XML Binding),個人覺得太方便了
    2013-05-05

最新評論