eureka簡單使用
使用idea創建,創建項目為maven和spring initializr都可以.如果要保證版本一致,可以創建 一個maven父工程,在下面創建module.
有幾點需要注意:
- 一般需要把熱部署打開.
- 注意eureka的依賴是spring-cloud-starter-netflix-eureka-server,這是注冊中心服務端.
- 以前的eureka的starter是叫做Spring Cloud Starter Eureka Server,但是在maven中央倉庫里搜索他會告訴你"Spring Cloud Starter Eureka (deprecated, please use spring-cloud-starter-netflix-eureka-server",意思是讓你使用spring-cloud-starter-netflix-eureka-server這個啟動器,這個需要特別注意.
pom.xml:
<?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>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<!-- spring boot的版本號,因為很多原因spring cloud和spring boot的兼容非常不好,在使用前最好去官網查一查spring cloud和spring boot版本的對應關系-->
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.eureka</groupId>
<artifactId>eureka</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>eureka</name>
<description>eureka project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR1</spring-cloud.version>
<!--spring cloud版本-->
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
<!--以前的springcloud的start是叫 Spring Cloud Starter Eureka但是現在最好不要用 -->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</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>
</project>
application.properties:
#注冊中心
server.port=25881
eureka.instance.hostname=127.0.0.1
#單機模式下開啟
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
#注冊地址 單機版
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka
如果要使用eureka集群的話,把下面的注冊地址改成其他eureka的地址就可以了.
需要注意的是你需要改hosts的文件來模擬不同的eureka主機地址.否則會失敗.
主類
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer//開啟eureka服務端
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
}
}
簡單配置結束了,啟動主類.
打開瀏覽器輸入你在application.properties中配置的地址和端口號.(注意不要加/eureka)一切順利的話瀏覽器會出現這樣的頁面.就表示配置成功了.