
微服务学习
文章平均质量分 82
《SpringCloud与Docker微服务架构与实战》一书的学习总结
泛冬以南
一个静心工作学习的小码农
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SpringCloud学习(九)--使用Zuul组件构建微服务网关
Zuul,空耳"Z勇".是Netfilx开源的微服务网关,它可以作为所有微服务请求的入口,即消费者优先请求Zuul微服务,由Zuul微服务进行请求的统一调度转发.一般在微服务数量较多、对服务的管理有严格的要求等情况下推荐使用.ZuulZuul的核心是一系列的过滤器,这些过滤器包含的基础功能如下:身份认证与安全:识别每个资源的验证要求,并拒绝那些与要求不符的请求.动态路由:动态地将请求路由到不同的后端集群.压力测试:逐渐增加指向集群的流量,便于了解性能.负载分配:为每种类型的请求分配容原创 2020-10-15 17:53:18 · 3176 阅读 · 0 评论 -
SpringCloud学习(八)--消费者服务基于Hystrix实现容错处理与监控(Feign客户端服务)
非Feign客户端消费者服务在使用Hystrix时,仅需要在指定方法上声明注解@HystrixCommand,并通过fallbackMethod属性指定服务降级处理方法即可.然而,Feign客户端消费者服务是以接口的形式进行服务消费的,其接口方法并不存在方法体,所以相对于非Feign客户端的消费者服务来说,Feign实现Hystrix的方式另有方案.其实,Feign已经整合了Hystrix组件,需要手动开启方可使用.Feign开启Hystrix组件在application.yml文件中,feign:原创 2020-09-16 17:27:59 · 2591 阅读 · 1 评论 -
SpringCloud学习(七)--消费者服务基于Hystrix实现容错处理与监控(非Feign客户端服务)
Hystrix,空耳"嗨嘶杰(卷舌)克嘶".由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性、容错性与局部应用的弹性,是一个实现了超时机制和断路器模式的工具类库.Hystrix主要通过以下几点实现延迟和容错:包裹请求:使用HystrixCommand包裹对依赖的调用逻辑,每个命令在独立的线程中执行,使用了设计模式中的“命令模式”.回退机制:当请求失败、超时、被拒绝或者当断路器打开时,执行回退方法.回退方法可由开发者设计.跳闸机原创 2020-09-04 14:42:59 · 3350 阅读 · 1 评论 -
SpringCloud学习(六)--消费者基于Feign实现声明式REST调用
Feign,空耳"费因(轻声)".是Netfix开发的声明式的HTTP客户端.可以帮助我们更加方便快捷的调用HTTP API.在SpringCloud中,使用Feign非常简单--引入Feign依赖,创建Feign接口,并在接口上添加对应的注解即可进行接口的调用.【SpringCloud的openfeign依赖对Feign进行了增强,使得Feign支持了Spring MVC注解,并整合了Eureka和Ribbon】创建一个基于module的Springboot项目.在springcloud-原创 2020-08-31 15:51:36 · 3043 阅读 · 1 评论 -
SpringCloud学习(五)--消费者整合Ribbon使其具备负载均衡的能力
Ribbon,空耳"惹(卷舌)苯".是Netfix发布的负载均衡器.为Ribbon配置好服务提供者的地址列表后,Ribbon便可基于某种负载均衡算法帮助消费者请求生产者【在Spring Cloud中,当EurekaClient整合了Ribbon后,Ribbon可以自动地获取EurekaServer的服务提供者的地址列表】使用消费者服务consumer整合Ribbon之前,首先需要在pom.xml中引入Ribbon的依赖 <dependency> <gr原创 2020-08-28 17:05:00 · 2531 阅读 · 1 评论 -
SpringCloud学习(四)--生产者服务的高可用(简易配置实现生产者集群的搭建)
以下,将展示如何在服务的同一个application.yml文件中通过简易的配置实现集群的搭建.打开provider项目的application.yml文件,通过连字符'---'将该application.yml文件分为三段.第二段和第三段分别为spring.profiles指定了一个值,该值表示它所在的那段内容应用在哪个Profile里.第一段由于并未指定spring.profiles,因此这段内容会对所有Profile生效.spring: application: na原创 2020-08-28 15:58:36 · 1880 阅读 · 1 评论 -
SpringCloud学习(三)--Eureka开启Spring Security基于Http Basic的安全认证
Basic认证是一种较为简单的HTTP认证方式,客户端通过明文(Base64编码格式)传输用户名和密码到服务端进行认证.如果EurekaServer(服务的发现与注册中心)无任何认证方式,那么任何客户端都可以进行注册并获取其他微服务的元数据.所以给EurekaServer添加安全认证机制是有必要的.本springcloud-demo项目中,eureka项目作为EurekaServer,provider项目和consumer项目均为EurekaClient.所以在eureka配置好secu原创 2020-08-20 10:56:41 · 2503 阅读 · 1 评论 -
SpringCloud学习(二)--消费者微服务对生产者微服务的调用
在已搭建好的微服务项目中创建一个provider微服务作为生产者和一个consumer微服务作为消费者.创建生产者微服务第一步, 在已搭建好的微服务Maven项目上,新建一个Springboot项目作为生产者微服务(provider)步骤如下图:1.在springcloud-demo上,右键选择"New"--"Module"2.选择"Spring Initializr"选项,即创建Springboot项目3.输出自己心仪的项目名称4.在依赖选择内,选中...原创 2020-08-19 10:29:22 · 2218 阅读 · 1 评论 -
SpringCloud学习(一)--创建微服务的注册与发现中心Eureka
SpringCloud的服务注册中心可选用:Eureka、Zookerper、Consul、etcd等等.Eureka包含两个组件:EurekaServer和EurekaClient;EurekaServer提供服务发现的能力,各个微服务启动时,会向EurekaServer注册自己的信息(eg:IP,端口,微服务名称等),EurekaServer会存储这些信息.EurekaClient是一个Java客户端,用于简化与EurekaServer的交互.ps:1.微服务启动后,会周期性(默认30秒)地向E原创 2020-08-11 17:44:53 · 1049 阅读 · 1 评论