第一篇: 服务的注册与发现(Eureka)

1.服务注册与发现

1.1创建服务注册中心

           需要使用到的组件时:SpringCloud Netflix的Eureka,eureka是一个服务注册和发现模块。

(1)创建项目

    1.创建maven工程

    2.maven工程右键创建2个module:一个作为服务注册中心,即Eureka Server,另一个作为Eureka Client。

3 启动一个服务注册中心,只需要一个注解@EnableEurekaServer,这个注解需要在springboot工程的启动application类上加:

@SpringBootApplication

@EnableEurekaServer      //启动一个服务注册中心

public class Demo1Eureka1Application {

    public static void main(String[] args) {

    SpringApplication.run(Demo1Eureka1Application.class, args);

    }

}

4.eureka Server

   eureka 是一个高可用的组件,它没有后端缓存,每一个实例注册后需要向注册中心发送心跳(因此可以再内存中完成),默认情况下eureka Server也是Client,必须要指定一个Server。

    eureka Server配置文件application.yml:


 通过register-with-eureka=false和fetch-registry=false标识为Server

eureka server 是有界面的,启动工程,打开浏览器访问: http://localhost:8080/


2.创建一个服务提供者EurekaClient

当Client向Server注册时,会提供一些元数据,例如:主机、端口、URL、主页等。

服务中心Server从每个服务提供者Client实例获取到心跳信息,如果心跳超时,则将该实例从注册中心剔除。

创建Client  Module工程

通过注解@EnableEurekaClient 表明自己是一个eurekaclient.


仅仅@EnableEurekaClient是不够的,还需要在配置文件中注明自己的服务注册中心的地址,application.yml配置文件如下:

注:需要指明spring.application.name,这个很重要,这在以后的服务与服务之间相互调用一般都是根据这个name 。

启动工程,打开http://localhost:8080,即eureka server 的网址:

发现新增的服务提供者Client已经注册在服务中了,服务名为CLIENT-ONE ,端口为9090

这时打开 http://localhost:9090/index?name=123,你会在浏览器上看到 :

源码:https://github.com/youqichun/springcloud-study-eureka/tree/master

四、参考资料

springcloud eureka server 官方文档

springcloud eureka client 官方文档

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容