springcloud--Eureka-搭建与配置服务中心
Eureka是一个服务治理组件,是微服务架构中服务注册与发现的核心组件之一。springcloud提供了多种服务注册与发现的实现方式。spring支持最好的是Eureka,其次是Consul再次是Zookeeper。
服务注册:将服务所在主机、端口、版本号、通信协议等登记到注册中心上。
服务发现:服务消费者向注册中心请求已经登记的服务列表,然后得到某个服务的主机、端口、版本号、通信协议等信息,从而实现对具体服务的调用。
springcloud使用Eureka注册中心实际上是一个springboot工程,通过引入依赖和注解配置就可以让springboot构建的微服务与Eureka整合。步骤如下
1.创建一个springboot项目,并且添加springboot相关依赖
2.修改pom.xml配置文件,添加eureka依赖:
springcloud更新换代比较快,1.5版本使用spring-cloud-starter-eureka-server还是没问题的。2.0以上建议使用 spring-cloud-starter-netflix-eureka-server。springcloud坑比较多,多做笔记多联系
<!--SpringCloud的eureka-server起步依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> <dependencyManagement> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${ spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencyManagement> <repositories> <repository> <id>spring-milestones</id> <name>Spring Milestones</name> <url>https://repo.spring.io/libs-milestones</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories>
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-server</artifactId> </dependency>
3.定义程序启动类即springboot入口类添加注解@EnableEurekaSever注解,用于开启Eureka注册中心服务端。
package com.wkcto.springcloud; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; @SpringBootApplication @EnableEurekaServer public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
4.在application.properties或application.yml配置文件中,配置Eureka服务注册中心信息:
application.properties application.yml
在这里插入代码片
server: port:8761 eureka: instance: hostname:localhost client: register-with-eureke:false fetch-register:false service-url: defaultZone:http://$(eureka.instance.hostname):$(server.port)/eureka/ # defaultZone:http://localhost:8761/eureka/
5.启动服务端Application.java,输入访问地址http://localhost:8761/eureka/
上一篇:
IDEA上Java项目控制台中文乱码