![](https://img-blog.csdnimg.cn/9483ce3d8f1f4061a5ee44a7c19e13dc.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Spring Cloud
文章平均质量分 68
Spring Cloud
坚持每天学习一点
找一个程序员学习搭子 杭州有没有帮我内推的大佬?
展开
-
一、微服务架构入门
1、什么是微服务?微服务是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间相互协调,相互配合,为用户提供最终价值。每个服务运行在独立的进程中,服务与服务间采用轻量级的通信机制相互协作(通常是基于http协议的 restful api) 每个服务都围绕着具体业务进行构建,并且能够独立的部署到生产环境。另外应当避免统一的,集中式的服务管理机制,对具体的一个服务而言,因根据业务上下文,选择合适的语言,工具对其进行构建2、什么是SpringCloudSpringCloud 是分布式微服务.原创 2021-05-11 23:25:00 · 150 阅读 · 0 评论 -
二、SpringBoot和SpringCloud之间的依赖关系
进入spring官网SpringCloud项目下:Spring CloudBoot和Cloud 依赖关系的详细介绍:在浏览器上输入 https://start.spring.io/actuator/info在线格式化json串,这里就是boot 和 cloud 对应的详细关系{ "git":{ "branch":"123e5422841ac92c95cd0378913ac5594fee4f3f", "commit":{ .原创 2021-05-12 19:35:00 · 430 阅读 · 0 评论 -
三、关于cloud各种组件的停更、升级、替换
下面这张图,描述了SpringCloud生态体系中过时的组件:SpringCloud 中文文档https://www.bookstack.cn/read/spring-cloud-docs/docs-index.md原创 2021-05-12 19:41:00 · 133 阅读 · 0 评论 -
四、微服务架构编码构建
1、父工程 cloud2020的搭建①、pom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0.原创 2021-05-16 20:07:00 · 82 阅读 · 0 评论 -
五、Eureka注册与发现(一)
1、Eureka的基础知识1)什么是服务治理?在传统的rpc调用框架中,服务与服务之间的依赖关系比较混款,管理比较复杂,所以需要使用服务治理,来管理服务间的依赖关系,实现服务调用,负载均衡,容错等,实现服务的发现和注册2)什么是服务注册?Eureka使用CS的设计架构,Eureka Server作为服务注册功能的服务器,它是注册中心,而系统中的其他微服务服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接。这样系统就可以通过Eureka Server来监...原创 2021-05-22 13:50:00 · 353 阅读 · 0 评论 -
五、Eureka注册与发现(二)集群
3、eureka集群构建1)Eureka Server集群环境 7001 7002 构建步骤① application.yml互相注册,相互守望server: port: 7001eureka: instance: hostname: eureka7001.com client: register-with-eureka: false fetch-registry: false service-url: #集群版 .原创 2021-05-28 00:47:00 · 148 阅读 · 0 评论 -
六、Zookeeper服务注册与发现
1)搭建zookeeper服务并启动这里就不再赘述了,直接去我的博客下看zookeeper在linux上的搭建2) 支付服务注册进zookeeper步骤如下:项目结构:① 添加依赖【注意】spring-cloud-starter-zookeeper-discovery中自带了 zookeeper3.5.3如果自己服务器上zookeeper的版本不是zookeeper3.5.3,则需要排除该依赖<dependencie...原创 2021-05-29 11:52:00 · 499 阅读 · 0 评论 -
七、consul服务注册与发现
1、Consul简介是什么?Consul是一套开源的分布式服务发现的配置管理系统,由HashiCorp用go语言开发提供了微服务系统中的服务治理,配置中心,控制总线等功能。这些功能中的每一个可以根据需要单独使用,也可以一起使用构建全方位的服务网络,总之Consul提供了一种完整的服务网格解决方案能干嘛?去哪下载?怎么使用 (中文版 需要仔细学的话可以看这里!)Spring Cloud Consul 中文文档 参考手册 中文版2、运...原创 2021-05-30 10:19:00 · 2419 阅读 · 0 评论 -
八、Ribbon负载均衡服务调用
1、概述SpringCloud Ribbon 是 基于 Netflix Ribbon实现的一套客户端(服务消费侧)负载均衡工具Ribbon客户端组件提供一些列完善的配置项,如连接超时,重试等。简单的来说,就是在配置文件中列出Load Balance后面所有的机器,Ribbon会自动帮助你基于某种规则去连接这些机器。我们很容易使用Ribbon实现自定义的负载均衡算法2、Ribbon负载均衡演示1)架构说明:Ribbon 是一个软负载均衡的客户端组件Ribbon在工作时候分.原创 2021-05-31 19:50:00 · 80 阅读 · 0 评论 -
九、OpenFeign 服务接口调用
1、概述Feign是一个声明式的WebService客户端。使用Feign能让编写Web Service客户端更加简单它的使用方法是定义一个服务接口,然后在上面添加注解。Feign也支持可拔插式的编码器和解码器。SpringCloud对Feign进行了封装,使其支持Spring MVC标准注解和HttpMessageConverters。Feign可以与Eureka和Ribbon组合使用以支持负载均衡Feign能干什么?(为什么要使用Feign)Feign旨在使编写Java Http客户端.原创 2021-05-31 21:05:00 · 813 阅读 · 0 评论 -
十、Hystrix 断路器(一)demo搭建
1、概述1)服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和C,微服务B和C又调用其他的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,那么对微服务的调用就会占用越来越多的系统资源,从而引起系统崩溃,这就是所谓的"雪崩效应“对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源在几秒内饱和。比失败更糟糕的是这些应用程序还可能导致服务之间的延迟增加,备份队列,线程和其他系统资源紧张,导致整个系统发生更多的级联故障。这些都.原创 2021-06-02 20:48:00 · 95 阅读 · 0 评论 -
十、Hystrix 断路器(二)服务降级
4、服务降级1)先从服务提供方8001找问题设置自己调用超时时间的峰值,峰值内可以正常运行,超过了需要有兜底的方法,作为降级fullback2)设置服务提供方8001的fullback① 一旦调用服务方法失败抛出错误信息或者调用服务超过3秒后,会自动调用@HistrixCommand中标注好的 fullbackMethod方法@Servicepublic class PaymentService { public String paymentInfo_ok(Int.原创 2021-06-04 22:18:00 · 180 阅读 · 0 评论 -
十、Hystrix熔断器(三)服务熔断
5 服务熔断1)熔断是什么?熔断机制是应对雪崩效应的一种微服务链路保护机制。当扇形链路的某个微服务出错不可用或者响应时间太长时,会进行服务的降级,从而熔断该节点微服务的调用,快速返回错误的响应信息。当检测到该节点微服务调用响应正常后,恢复调用链路在Spring Cloud框架中。熔断机制通过Hystrix实现。Hystrix会监控微服务之间调用的状况,当失败的调用到一定阈值时,(缺省是5秒内调用20次失败,就会启动熔断机制)熔断机制的注解是@HystrixCommand2).原创 2021-06-08 22:26:00 · 313 阅读 · 0 评论 -
十一、Zuul路由网关
暂时先不讲原创 2021-06-08 22:28:00 · 68 阅读 · 0 评论 -
十二、Gateway新一代网关
1、概述1)是什么?gateway是zuul1.x版的替代GateWay是在Spring生态系统之上构建的API网关服务,基于Spring 5 , Spring Boot2 和 Project Reactor等技术。、SpringCloud Gateway使用的是Webflux中的react-netty响应式编程组件,底层使用了Netty通讯框架GateWay旨在提供一种简单有效的方式来对API进行路由,以及提供一些强大的过滤器功能,例如:熔断、限流、重试等2)能干...原创 2021-06-10 08:06:00 · 472 阅读 · 0 评论 -
十三 SpringCloud Config分布式配置中心
一、概述1、分布式服务过程中面临的一些问题?微服务意味着将单体应用中的业务拆分成一个个子服务,每个服务的粒度较小,因此系统会出现大量的服务,由于每个服务都需要必要的配置信息才能运行,所以一套集中式的,动态的配置管理设施是必不可少的。SpringCloud提供了ConfigServer来解决这个问题,否则我们的每个微服务都带着自己的一个application.yml,上百个配置文件的管理 o(╥﹏╥)o2、SpringCloud-config是什么?中心化的外部配置...原创 2021-04-28 07:48:00 · 206 阅读 · 0 评论 -
十四、SpringCloud Bus 消息总线
1、概述1)是什么?Spring Cloud Bus是用来将分布式系统的节点与轻量级消息系统连接起来的框架2)能干嘛?Spring Cloud Bus能够管理和传播分布式系统间的消息,就像一个分布式执行器,用于广播状态更改,事件推送,是微服务之间的通信通道3)为何被称之为总线① 在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题,并让系统中的所有微服务实例都连接上来。由于主题中产生的消息会被所有的实例监听和消费,所以称它...原创 2021-06-19 21:08:00 · 360 阅读 · 0 评论 -
十五、Spring Cloud Stream 消息驱动
1、消息驱动概述1)是什么?一句话:屏蔽底层消息中间件的差异,降低切换成本,统一消息的编程模型什么是SpringCloudStream官方定义的SpringCloudStream是一个构建消息驱动微服务的框架应用程序通过inputs或者outputs来与SpringCloudStream中的binder对象交互。通过我们来配置binding(绑定),Spring Cloud Stream的bin...原创 2021-06-20 17:45:00 · 423 阅读 · 0 评论 -
十六、Spring Cloud Sleuth 分布式请求链路追踪
官网: https://github.com/spring-cloud/spring-cloud-sleuthspring-cloud-sleuth 提供了一套完整的分布式链路追踪的解决方案 ,并且兼容支持了 zipkin (展现)原创 2023-08-19 18:11:29 · 1332 阅读 · 0 评论