网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

SpringCloud之Netflix服务发现(Eureka)

前言

随着服务化编程思想的不断流行,越来越多的公司、企业、开发人员使用微服务技术。目前流行的两大微服务技术:dubbo\SpringCloud。这篇文章不会去对dubbo和SpringCloud进行对比,这篇文章我主要想介绍SpringCloud全家桶中的netflix组件,结合实际案例代码进行说明。也对我工作中使用SpringCloud进行总结。

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信平台小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了沾益免费建站欢迎大家使用!

NetFlix

netflix是收费视频网站公司的名字,全球十大视频网站之一,如果想了解的可自行Google。Spring Cloud Netflix是SpringCloud中的一个组件库,Spring Cloud Netflix通过自动配置和绑定到Spring环境和其他Spring编程模型习惯用法,为Spring Boot应用程序提供Netflix OSS集成。通过一些简单的注解,可以快速启用和配置应用程序内的常见模式,Netflix组件构建大型分布式系统。提供包括服务发现(Eureka)、熔断器(Hystrix)、智能路由(Zuul)和客户端负载均衡器(Ribbon)。

服务发现(Eureka)

服务发现(Eureka)是netflix的核心组件,它负责服务注册,管理服务列表。下面这幅图解释Eureka的职责:
SpringCloud之Netflix服务发现(Eureka)
所有服务都需要在Eureka-Server上进行注册登记,订单服务、产品服务、支付服务、用户服务都是Eureka管理的服务,需要它们进行上报,上报的信息包括ServiceId,节点地址,服务接口等,那么注册中心就会通过心跳检查去维护这份服务列表。接下来我们编写一个Eureka-Server、Product-Service模拟这种服务发现。

开发环境与工具:IDEA+JDK8+SpringBoot2.1.0
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
到这里就把项目创建起来了,但这个时候还只是一个SpringBoot的项目,需要开启EurekaServer注解。
SpringCloud之Netflix服务发现(Eureka)
同时我们把application.yml配置一下:
SpringCloud之Netflix服务发现(Eureka)
我们启动该项目,用浏览器打开管理台。
SpringCloud之Netflix服务发现(Eureka)
到这里,我们就已经把EurekaServer写完了,那么我们接下来就是写Product-Service.
在写之前我们先定一下提供的接口,list接口提供所以产品信息,find接口根据id查找商品信息。Product-Service,我们按照常规的模式进行编写分Controller、Service、Domain,过程如下:
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
商品domain类,包括id,名称,价格,库存。
SpringCloud之Netflix服务发现(Eureka)
SpringCloud之Netflix服务发现(Eureka)
到这里就已经写完了Product-Service.我们还需要配置application.yml,让这个服务自动注册到Eureka-Server去。
SpringCloud之Netflix服务发现(Eureka)

我们启动该Product-service。我们一共启动Product-Service的三个实例8771\8772\8773,然后我们进入到Eureka-Server查看。
SpringCloud之Netflix服务发现(Eureka)
这个时候我们就看到,Product-Service服务已经自动注册到这里来了,一共有三个节点,端口分别是8771,8772,8773.
SpringCloud之Netflix服务发现(Eureka)
接口也都可以使用。

我们可以停掉其中一个节点:8773,再去看下EurekaServer.
SpringCloud之Netflix服务发现(Eureka)
我们发现eurekaserver上8773的product-service显示DOWN的红色字体,说明它是可以检查到服务的状态的,我们在此启动,你会发现down消失了。

备注:@EnableEurekaClient这个注解可以不用写的,因为我们SPRING INITIALIZR构建的项目IDE已经帮我们做好了很多工作,映入spring-cloud-starter-netflix-eureka-client,它就会自动去检查application.yml,我们在配置文件中已经配置了Eureka客户端相应的信息,那么这个应用就自动加上了@EnableEurekaClient。


分享文章:SpringCloud之Netflix服务发现(Eureka)
分享地址:http://bjjierui.cn/article/poioos.html

其他资讯