1.简介
和Consul、Zookeeper类似,Eureka是一个用于服务注册hefa和发现组件,分为Eureka Server 服务注册中心和Eureka Client 客户端。
服务消费基本过程:服务提供者Eureka Client 向服务注册中心 Eureka Server 注册,将自己的信息提交给Eureka Server,服务消费者Eureka Client 也向服务注册中心 Eureka Server 注册,同时服务消费者获得一份服务注册列表信息,及服务提供者的IP,可以通过Http 远程调度来消费服务提供者的服务。
2.创建项目
======
2.1 Eureka Server
这里涉及到多个项目,所以采用Maven多module 的结构。
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 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
com.springcloud.demo
springcloud-demo
1.0-SNAPSHOT
pom
org.springframework.boot
spring-boot-starter-parent
2.0.6.RELEASE
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.SR1</spring-cloud.version>
org.springframework.cloud
spring-cloud-dependencies
${spring-cloud.version}
pom
import
2.1.2 创建eureka-server Moudule 作为注册中心,使用Spring Initializr构建。
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 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
com.springcloud.demo
springcloud-demo
1.0-SNAPSHOT
eureka-server
0.0.1-SNAPSHOT
jar</pac
【一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义】 浏览器打开:qq.cn.hn/FTf 开源分享
kaging>
eureka-server
Demo project for Spring Boot
org.springframework.cloud
spring-cloud-starter-netflix-eureka-server
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-maven-plugin
添加配置
server.port=8791
spring.application.name=eureka-server
eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false
##防止自己注册自己
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http:// e u r e k a . i n s t a n c e . h o s t n a m e : {eureka.instance.hostname}: eureka.instance.hostname:{server.port}/eureka/
在启动类EurekaServerApplication 添加@EnableEurekaServer
@EnableEurekaServer
@SpringBootApplication
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
2.2 编写Eureka Client
新建Module eureka-client ,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 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
com.springcloud.demo
springcloud-demo
1.0-SNAPSHOT
eureka-client
0.0.1-SNAPSHOT
jar
eureka-client
Demo project for Spring Boot