Spring Cloud也包含了許多的子項目 , 下面等下要使用的Eureka只是其中的一個子項目 java
Eureka的功能有點相似於dubbo和zookeeper,它是一個服務治理組件,包含了服務註冊中心、服務註冊與發現機制。web
Eureka的使用很是簡單 spring
咱們首先在idea裏建立一個maven項目 , 等下方便咱們進行操做app
服務治理組件 咱們須要弄服務註冊中心、服務註冊(提供者)與發現機制(消費者)三個Spring Boot項目,我把他們都放在maven裏進行管理 ,具體步驟以下:maven
先在maven項目上在去新建一個module ,做爲咱們的服務註冊中心(eureka)ide
新建的module咱們選擇Spring Boot項目 , 勾選以下依賴spring-boot
具體依賴以下fetch
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.liy</groupId> <artifactId>eureka</artifactId> <version>0.0.1-SNAPSHOT</version> <name>eureka</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <spring-cloud.version>Greenwich.SR1</spring-cloud.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <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-test</artifactId> <scope>test</scope> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</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>
這個服務中心 ,咱們只須要在配置文件中配置一下 , 而後在啓動類裏使用一個註解 ,而後啓動項目便可ui
application.propertiesurl
#端口號 server.port=1111 spring.application.name=eureka #是否向註冊中心(eureka)註冊 ,沒必要向本身註冊 ,除非是搭建一個註冊中心的集羣,那麼這裏就要爲true了 eureka.client.register-with-eureka=false #是否容許它去獲取其餘的註冊的服務,由於他是註冊中心,因此不須要去獲取的 eureka.client.fetch-registry=false
啓動類裏添加個@EnableEurekaServer
@SpringBootApplication @EnableEurekaServer public class EurekaApplication { public static void main(String[] args) { SpringApplication.run(EurekaApplication.class, args); } }
啓動項目看到以下頁面 , 即註冊中心ok了(下面截圖只截取了頭部)
若是是要搭建這個註冊中心的集羣的話 ,也是至關簡單的 ,
複製這個application.properties配置文件的兩份
application-peer1.properties
server.port=1111 spring.application.name=eureka eureka.instance.hostname=peer1 #搭建eureka集羣 ,開啓向eureka註冊 eureka.client.register-with-eureka=true eureka.client.fetch-registry=false #搭建eureka集羣,那麼須要註冊到eureka去,這是註冊的eureka的路徑 eureka.client.service-url.defaultZone=http://peer2:1112/eureka
application-peer2.properties
server.port=1112 spring.application.name=eureka eureka.instance.hostname=peer2 eureka.client.register-with-eureka=true eureka.client.fetch-registry=false #互相註冊,保持消息服務同步 eureka.client.service-url.defaultZone=http://peer1:1111/eureka
還須要在 本機的C:\Windows\System32\drivers\etc 路徑下去到 hosts 文件裏去加上下面圖片上的兩行
這是在一個Spring Boot項目裏 ,怎麼運行不一樣的配置文件呢 , 咱們把項目進行打包
選擇左邊的maven ,而後選擇要打包的Spring Boot項目 ,雙擊如圖的package ,就開始打包了 ,以下打包成功
而後咱們點擊Terminal
進入打包的目錄裏去
分別啓動兩個
若是你只啓動了一個 ,或者另外一個尚未啓動起來 , 那麼那個已經啓動了的會一直報錯
,
你只需把另外一個啓動便可 ,兩個啓動成功
這樣個人註冊中心eureka集羣就就搭建好了 , 下一篇咱們講提供者(provider)以及提供者集羣和消費者(consumer)怎麼搭建