上一篇文章講解了如何搭建單個節(jié)點的eureka,這篇講解如何搭建eureka集群,這里的集群還是本地不同的端口執(zhí)行三個eureka,因為條件不要允許,沒有三臺電腦,所以大家將就一下吧,eureka集群的目的就是防止一個點故障導(dǎo)致,整個服務(wù)癱瘓的問題,成為單點故障,因為一個點出問題,還有另一個點頂上去,代替這個點工作,所以集群也實現(xiàn)了高可用、高性能
10年積累的成都做網(wǎng)站、成都網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有寧江免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。每一個注冊點都配置有其它點的url,能夠與其他server點進行數(shù)據(jù)的同步,當(dāng)服務(wù)向一個點注冊時,該店就會把該服務(wù)同步到其它注冊點,當(dāng)消費者需要消費時就會向注冊中心詢問具體的服務(wù),注冊中心就會向消費者提供具體的提供該服務(wù)的服務(wù)提供者的訪問地址,最后實現(xiàn)服務(wù)的調(diào)用
這里方便就直接把所有的服務(wù)都泡在本地的win10環(huán)境中,本來真正模擬環(huán)境是要在linux的虛擬機上跑的,大家可以自行百度,原理都一樣的,只不過跑在linux上需要打包發(fā)布,我就直接在win上操作了。首先本地跑多個服務(wù)配置一下,域名映射,在C:\Windows\System32\drivers\etc路徑下的hosts文件中加入:
127.0.0.1 eureka3000.com
127.0.0.1 eureka3001.com
127.0.0.1 eureka3002.com
這里需要提醒的是,修改hosts文件是有權(quán)限的,具體設(shè)置權(quán)限的方法參考win10修改配置文件
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3000</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>eureka3000</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<!-- 繼承本項目的父工程 -->
<parent>
<groupId>com.org.ldc</groupId>
<artifactId>eureka-father</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
<!--引入eurekaserver 依賴-->
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
server:
port: 3000
eureka:
server:
enable-self-preservation: false #關(guān)閉自我保護機制
eviction-interval-timer-in-ms: 4000 #設(shè)置清理間隔(單位:毫秒 默認是60*1000)
instance:
hostname: eureka3000.com
client:
serviceUrl:
defaultZone: http://eureka3001.com:3001/eureka,http://eureka3002.com:3002/eureka #將自己當(dāng)成服務(wù)注冊到其他注冊中心
spring:
application:
name: eureka-server-cluster #設(shè)置服務(wù)名
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3001</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>eureka3001</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<!-- 繼承本項目的父工程 -->
<parent>
<groupId>com.org.ldc</groupId>
<artifactId>eureka-father</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
<!--引入eurekaserver 依賴-->
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
server:
port: 3001
eureka:
server:
enable-self-preservation: false #關(guān)閉自我保護機制
eviction-interval-timer-in-ms: 4000 #設(shè)置清理間隔(單位:毫秒 默認是60*1000)
instance:
hostname: eureka3001.com
client:
serviceUrl:
defaultZone: http://eureka3000.com:3000/eureka,http://eureka3002.com:3002/eureka #將自己當(dāng)成服務(wù)注冊到其他注冊中心
spring:
application:
name: eureka-server-cluster #設(shè)置服務(wù)名
啟動類同上
eureka3002的pom文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3002</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>eureka3002</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<!-- 繼承本項目的父工程 -->
<parent>
<groupId>com.org.ldc</groupId>
<artifactId>eureka-father</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
<!--引入eurekaserver 依賴-->
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR2</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
- eureka3002的application文件:
server:
port: 3002
eureka:
server:
enable-self-preservation: false #關(guān)閉自我保護機制
eviction-interval-timer-in-ms: 4000 #設(shè)置清理間隔(單位:毫秒 默認是60*1000)
instance:
hostname: eureka3002.com
client:
serviceUrl:
defaultZone: http://eureka3001.com:3001/eureka,http://eureka3000.com:3000/eureka #將自己當(dāng)成服務(wù)注冊到其他注冊中心
spring:
application:
name: eureka-server-cluster #設(shè)置服務(wù)名
- 最后是工程的pom文件內(nèi)容如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<!--基本信息-->
<description>SpringBoot-Eureka環(huán)境搭建多模塊構(gòu)建示例</description>
<modelVersion>4.0.0</modelVersion>
<name>eureka-father</name>
<packaging>pom</packaging>
<!-- 項目說明:這里作為聚合工程的父工程 -->
<groupId>com.org.ldc</groupId>
<artifactId>eureka-father</artifactId>
<version>1.0.0.RELEASE</version>
<!-- 繼承說明:這里繼承SpringBoot提供的父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
<modules>
<module>eureka3000</module>
<module>eureka3001</module>
<module>eureka3002</module>
<module>user5000</module>
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3000</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3001</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.org.ldc</groupId>
<artifactId>eureka3002</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.org.ldc</groupId>
<artifactId>user5000</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>
在這里說明一下,這里的搭建教程是基于maven的聚合工程搭建的,需要有能搭建maven聚合工程的前提,這里就默認大家會搭建,所以就一頓輸出了,如果還不懂的可以自行去百度。
最后測試就是啟動各個注冊中心,然后最后啟動服務(wù)在瀏覽器分別輸入各個注冊中心的訪問地址,出現(xiàn)如下圖,說明搭建成功
![在這里插入圖片描述](https://img-blog.csdnimg.cn/20191215215951525.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzMjU1MDE3,size_16,color_FFFFFF,t_70)
>更多的教程請關(guān)注非科班的科班,一起努力,加油干,路過的小伙伴幫我點個贊,謝謝大家
最后分享一波java的資源,資源包括java從入門到開發(fā)的全套視頻,以及java的26個項目,資源比較大,大小大概是290g左右,鏈接容易失效,獲取的方式是關(guān)注公眾號:非科班的科班,讓后回復(fù):java項目即可獲得,祝大家學(xué)習(xí)愉快
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁題目:Spring-Cloud學(xué)習(xí)之Eureka集群搭建-創(chuàng)新互聯(lián)
文章出自:http://muchs.cn/article30/dgcjpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、關(guān)鍵詞優(yōu)化、建站公司、網(wǎng)站設(shè)計、用戶體驗、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)