ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:1.58MB ,
资源ID:27199088      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27199088.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(SpringCloud系列研究Eureka服务发现.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

SpringCloud系列研究Eureka服务发现.docx

1、SpringCloud系列研究Eureka服务发现SpringCloud系列研究第一部分Eureka服务发现第二部分Eureka服务注册最近工作时间不是很忙,于是准备系统的研究下SpringCloud,之前就了解到SpringCloud为微服务体系开发提供了一整套的解决方案,包括:服务注册与发现、服务消费、服务保护与熔断、网关、分布式调用追踪、分布式配置管理等,于是想借此机会记录下整个研究的过程。 在开始写代码之前先简单介绍下SpringCloud都有哪些常用的服务,以下内容完全来源于网络: Spring Cloud Config:配置管理开发工具包,可以让你把配置放到远程服务器,目前支持本地

2、存储、Git以及Subversion。 Spring Cloud Bus:事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。 Spring Cloud Netflix:针对多种Netflix组件提供的开发工具包,其中包括Eureka、Hystrix、Zuul、Dashboard等。 1、Eureka,服务注册和发现,它提供了一个服务注册中心、服务发现的客户端,还有一个方便的查看所有注册的服务的界面。 所有的服务使用Eureka的服务发现客户端来将自己注册到Eureka的服务器上。 2、Zuul,网关,所有的客户端请求通过这

3、个网关访问后台的服务。他可以使用一定的路由配置来判断某一个URL由哪个服务来处理。并从Eureka获取注册的服务来转发请求。 3、Ribbon,即负载均衡,Zuul网关将一个请求发送给某一个服务的应用的时候,如果一个服务启动了多个实例,就会通过Ribbon来通过一定的负载均衡策略来发送给某一个服务实例。 4、Feign,服务客户端,服务之间如果需要相互访问,可以使用RestTemplate,也可以使用Feign客户端访问。它默认会使用Ribbon来实现负载均衡。 5、Hystrix,监控和断路器。我们只需要在服务接口上添加Hystrix标签,就可以实现对这个接口的监控和断路器功能。 6、Hys

4、trix Dashboard,监控面板,他提供了一个界面,可以监控各个服务上的服务调用所消耗的时间等。 7、Turbine,监控聚合,使用Hystrix监控,我们需要打开每一个服务实例的监控信息来查看。而Turbine可以帮助我们把所有的服务实例的监控信息聚合到一个地方统一查看。这样就不需要挨个打开一个个的页面一个个查看。 Spring Cloud for Cloud Foundry:通过Oauth2协议绑定服务到CloudFoundry,CloudFoundry是VMware推出的开源PaaS云平台。 Spring Cloud Sleuth:日志收集工具包,封装了Dapper,Zipkin和

5、HTrace操作。 Spring Cloud Data Flow:大数据操作工具,通过命令行方式操作数据流。 Spring Cloud Security:安全工具包,为你的应用程序添加安全控制,主要是指OAuth2。 Spring Cloud Consul:封装了Consul操作,consul是一个服务发现与配置工具,与Docker容器可以无缝集成。 Spring Cloud Zookeeper:操作Zookeeper的工具包,用于使用zookeeper方式的服务注册和发现。 Spring Cloud Stream:数据流操作开发包,封装了与Redis,Rabbit、Kafka等发送接收消息。

6、 Spring Cloud CLI:基于 Spring Boot CLI,可以让你以命令行方式快速建立云组件。 其中有几个是分布式系统中常用的组件,如:服务发现Netflix Eureka、客服端负载均衡Netflix Ribbon、断路器Netflix Hystrix、服务网关Netflix Zuul、分布式配置Spring Cloud Config,号称分布式开发五大神兽。 最后简单介绍一下我的开发环境,OS:windows7 64位;IDE:IntelliJ IDEA 2017.2.3;JDK:1.8.0_31;编译工具:Gradle,后面所有的Demo示例均基于这个环境。SpringC

7、loud系列研究-Eureka服务发现这里选择gradle直接next继续next最后点击finish二:创建Eureka服务中心选择第一步中创建的项目,右键选择new-module选择Spring Initializr,然后next这里输入Group、Artifact,并选择Gradle Project,然后next选择Eureka Server,然后点击next输入module name然后finish我这里把几个都勾上了,然后OK三:代码代码很简单,只需要在springboot工程的启动application类上加一个EnableEurekaServer注解就行了,具体如下: 1 pac

8、kage com.cloud.microservice.demo.eurekaserver; 2 3 import org.springframework.boot.SpringApplication; 4 import org.springframework.boot.autoconfigure.SpringBootApplication; 5 import flix.eureka.server.EnableEurekaServer; 6 7 EnableEurekaServer 8 SpringBootApplication 9 public class EurekaServerAppli

9、cation 10 11 public static void main(String args) 12 SpringApplication.run(EurekaServerApplication.class, args);13 14 eureka server的配置文件appication.yml: 1 server: 2 port: 9090 3 4 eureka: 5 instance: 6 hostname: localhost 7 client: 8 registerWithEureka: false 9 fetchRegistry: false10 serviceUrl:11 de

10、faultZone: http:/$eureka.instance.hostname:$server.port/eureka/启动工程,打开浏览器访问: http:/localhost:9090,界面如下:SpringCloud系列研究-Eureka服务注册通过注解EnableEurekaClient 表明自己是一个eurekaclient,也即服务的提供者。启动类代码如下: 1 package com.cloud.microservice.demo; 2 3 import org.springframework.boot.SpringApplication; 4 import org.spr

11、ingframework.boot.autoconfigure.SpringBootApplication; 5 import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 6 import flix.eureka.EnableEurekaClient; 7 import org.springframework.context.annotation.ComponentScan; 8 9 SpringBootApplication10 EnableDiscoveryClient11 EnableEurekaCl

12、ient12 ComponentScan(com.cloud.microservice.demo)13 public class DemoProviderApplication 14 15 public static void main(String args) 16 SpringApplication.run(DemoProviderApplication.class, args);17 18 为了把启动类和接口分离,我这里新建了一个provider包,把Rest接口UserProvider.java放在该路径下,工程结构如下:UserProvider.java代码如下: 1 package

13、 com.cloud.microservice.demo.provider; 2 3 import flix.feign.FeignClient; 4 import org.springframework.web.bind.annotation.RequestMapping; 5 import org.springframework.web.bind.annotation.RequestMethod; 6 import org.springframework.web.bind.annotation.RequestParam; 7 import org.springframework.web.b

14、ind.annotation.RestController; 8 9 FeignClient(name = ms-demo-provider)10 RestController11 RequestMapping(/demo/user)12 public class UserProvider 13 14 RequestMapping(value=/1.0/findAll,method= RequestMethod.GET)15 public String findAll(RequestParam String name)16 17 return hello,this is +name;18 19

15、 配置文件application.yml如下:registerWithEureka表示是否注册自身到eureka服务器,由于当前该应用就是eureka服务,为了在Eureka服务上能看到注册信息,这里设为true;fetchRegistry表示是否从eureka服务器获取注册信息。 1 server: 2 port: 8090 3 4 eureka: 5 instance: 6 hostname: localhost 7 client: 8 registerWithEureka: true 9 fetchRegistry: false10 serviceUrl:11 defaultZone: http:/$eureka.instance.hostname:9090/eureka/12 13 spring:14 application:15 name: ms-demo-provider

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1