Spring Cloud微服务实战(二)服务治理:Spring Cloud Eureka

Spring Cloud Eureka学习笔记

参考书籍--《Spring Cloud 微服务实战》翟永超

(一)什么是服务治理

服务治理是微服务架构中最为核心和基础的模块,主要分为两部分:服务注册与服务发现。为什么需要服务治理?在微服务系统服务中,我们会通过一些静态配置来完成服务的调用,而每个服务都需要有一个具体的服务清单,开发人员需要实时维护这些清单。在服务不多的时候或许这项工作还可以接受,但当微服务系统相当大的时候,通过人工维护就显得不现实了。所以服务治理应运而生。

    服务注册:在服务治理框架中,通常需要构建一个注册中心,每个单元向注册中心登记自己提供的服务,注册中心则负责分类维护这些清单,同时还需要以心跳方式去检测服务是否可用,避免服务故障。

    服务发现:有了服务治理框架,服务间调用不再需要通过指定具体的实例地址来实现,而是通过向注册中心咨询服务,并获取所有服务的实例清单,以此来实现服务间的访问。

(二)Netflix Eureka

    Spring Cloud Eureka,通过Netfilx Eureka来实现服务的注册与发现,虽然Netfilx Eureka是一个用java编写的框架,但它也支持非java语言构建的微服务,因为Eureka服务端有完备RESTful API。

(三)搭建服务注册中心

(1)搭建一个spring boot工程,在pom.xml中引入必要的依赖


注:spring cloud版本很多,一开是构建的时候使用的是spring boot 2.0.1RELEASE版本,后来出现了不兼容的问题,花了很多时间也没解决,后来用来1.5.x,终于成功了。

(2)启动类上添加@EnableEurekaServer注解


(3)在application.yml中进行相关配置


(4)启动


注册中心就搭建成功啦!其中Instances currently registered with Eureka栏是空的,因为此时还没有注册任何服务。

(四)注册服务提供者

(1)重新添加一个spring boot应用,添加Spring Cloud Eureka模块,pom.xml如下


(2)添加一个Controller处理请求,同时注入DiscoveryClient对象


(3)主类中添加@EnableDiscoveryClient注解


(4)application.yml文件中指明服务名和服务中心地址


(5)最后启动服务注册中心以及服务提供者,可以看到Instances currently registered with Eureka栏多了一个BEIYI-CLIENT



阅读更多
个人分类: 微服务
上一篇Spring Cloud微服务实战(一)-- 什么是微服务
下一篇Spring Cloud微服务实战(三)高可用注册中心,服务发现与消费
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭