springcloud
文章平均质量分 92
爱吃面的猫
1
展开
-
第一章 微服务概述
微服务架构模式风格它提倡将单一应用程序划分成一组小的服务服务之间轻量级的通信机制。原创 2022-10-12 15:27:34 · 278 阅读 · 0 评论 -
第二章 springcloud入门概述
并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过SpringBoot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的。等组件,都可以用SpringBoot的开发风格做到一键启动和部署,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。服务注册与发现、配置中心、熔断器(断路器)、路由(服务网关)、负载均衡、全链路监控、事件总线、全局锁、决策竞选、分布式会话。分布式系统开发工具包。原创 2022-10-12 15:39:01 · 399 阅读 · 0 评论 -
第三章 Spring Cloud 组件及入门案例
Spring Cloud 集成了各种微服务组件,基于 Spring Boot 实现了这些组件的自动装配,从而提供了开箱即用的效果。原创 2022-10-12 09:32:59 · 1093 阅读 · 1 评论 -
第四章 Ribbon负载均衡
将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如:连接超时、重试等。简单的说,就是在配置文件中列出Load Balancer (简称LB)后面所有的机器。它可以通过在客户端中配置RibbonServerList来设置服务端列表去轮询访问以达到均衡负载的作用。简单的说就是将用户的请求平摊的分配到多个服务上,从而达到系统的HA。我们也很容易使用Ribbon实现自定义的负载均衡算法。简单的说,用于客户端的负载均衡软件。,在微服务或分布式集群中经常用的一种应用。原创 2022-10-13 08:19:41 · 1198 阅读 · 0 评论 -
第五章 Feign负载均衡详解
参考官网: https://github.com/OpenFeign/feign在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。我们可以使用JDK原生的URLConnection、Apache的Http Client、Netty的异步HTTP Client,Spring的RestTemplate。但是,用起来最方便的还是要属Feign了。Feign是一个声明式WebService客户端。原创 2022-10-13 17:00:56 · 5464 阅读 · 3 评论 -
第六章 Hystrix断路器详解+环境搭建
由于每个单元都在不同的进程中运行,依赖通过远程调用的方式执行,这样就有可能因为网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不断增加,最后就会出现因等待出现故障的依赖方响应而形成任务积压,线程资源无法释放,最终导致自身服务的瘫痪,进一步甚至出现故障的蔓延最终导致整个系统的瘫痪。多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。,以提高分布式系统的弹性。原创 2022-10-14 08:44:26 · 1038 阅读 · 0 评论 -
第七章 Hystrix断路器的详解-服务降级之局部降级
由于每个单元都在不同的进程中运行,依赖通过远程调用的方式执行,这样就有可能因为网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不断增加,最后就会出现因等待出现故障的依赖方响应而形成任务积压,线程资源无法释放,最终导致自身服务的瘫痪,进一步甚至出现故障的蔓延最终导致整个系统的瘫痪。多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。,以提高分布式系统的弹性。原创 2022-10-17 13:42:34 · 427 阅读 · 0 评论 -
第八章 Hystrix断路器的详解-服务降级之全局服务降级
全局降级和专属降级。将 OrderController 中所有的兜底方法都使用统一的一个全局兜底方法进行降级。其他方法使用注解@HystrixCommand 则使用全局的降级方法。将其它普通的统一跳转到统一处理结果页面,个别重要核心业务有专属,通用的和独享的各自分开,避免了代码膨胀,合理减少了代码量。1、定义全局降级方法。原创 2022-10-17 14:00:28 · 634 阅读 · 0 评论 -
第九章 Hystrix断路器详解+服务降级之全局解耦
业务逻辑方法和处理服务异常降级方法混在一起,不便于维护,为解决此问题,可以使用注解 @FeignClient(value = "PRODUCT-SERVICE",fallback = xxx.class) 在调用远端服务的接口上进行指定服务降级方法解耦,并实现调用远端服务的接口的实现类,在实现类中统计管理服务降级解耦的方法。# instance-id: order-service # 实例 id,服务的唯一标识,会自动的找到order-service的ip和端口。此处为方便演示,不使用全局或者专属。原创 2022-10-17 18:35:47 · 608 阅读 · 0 评论 -
第十章 Hystrix断路器详解+服务熔断
服务熔断机制:所有微服务都需要引入Hystrix组件,即每个服务都有自己的监控器。当某个微服务请求达到阈值,则开启断路器,进行服务熔断。服务熔断作用:就是防止服务雪崩现象出现。原创 2022-10-17 19:32:58 · 2456 阅读 · 0 评论 -
第十一章 GetAway服务网关详解
所谓的API网关,就是指系统的统一入口,它封装了应用程序的内部结构,为客户端提供统一服务,一些与业务本身功能无关的公共逻辑可以在这里实现,诸如认证、鉴权、监控、路由转发等等。:此时,如果有新的客户端分别调用 订单服务 和 商品服务,那么这个客户端需要维护新的ip和port。而新客户端调用这些微服务时候,微服务又需要解决进行认证鉴权、安全校验、跨域问题。如果微服务 订单服务 和 商品服务 可能有成百上千个。如下图所示,订单服务 调用 商品服务 的 流程的变化从1-4。二、服务网关的种类和区别。原创 2022-10-19 09:58:01 · 3334 阅读 · 0 评论 -
第十二章 Spring Cloud Config 统一配置中心详解
通过上图可知,每个微服务都有一个配置文件,目前只是11个微服务,就需要11个配置文件,若有上百个微服务呢?组件:统一配置中心服务端集中管理配置文件、统一配置中心客户端就是各微服务。Spring Cloud Config 在微服务分布式系统中,采用。配置管理中心,用来实现微服务系统中服务配置的统一管理。2、Spring Cloud Config作用。3、Spring Cloud Config 组件。1、Spring Cloud Config特性。的组件方式来提供可扩展的配置服务。「Client 客户端」原创 2022-10-20 11:13:14 · 6279 阅读 · 8 评论 -
第十三章 Spring Cloud Config 统一配置中心详解-客户端动态刷新
在cmd窗口进行手动刷新,必须是post请求,curl -X POST "http://localhost:9000/actuator/refresh"。重新启动订单服务,浏览器访问地址http://localhost:9000/order/getConfig 查看效果。我们看到,远端仓储的配置信息改变,如果不重新启动订单服务,则无法刷新远端仓储的配置信息。使用动态刷新,动态刷新分为两种形式,一种是手动刷新,一种是自动刷新。现在我们来做一个改变,并进行分析。2、暴露服务端点,让客户端能感受到配置的更新。原创 2022-10-22 14:19:50 · 1747 阅读 · 0 评论 -
第十四章 Spring Cloud Bus消息总线详解
它是利用消息中间件Rubbitmq,把config server 作为生产者,把所有的微服务例如订单服务,商品服务等,作为消费者。远程仓储修改后,Bus会进行自动向config server 发送 POST 请求:actuator/bus-refresh,config server将Bus发送来的请求打包为生产者消息,发送到Rubbitmq。,会自动的拉取一下更新后的配置信息。详细解释:在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题,并让系统中所有微服务实例都连接上来。原创 2022-10-24 16:26:36 · 867 阅读 · 0 评论 -
第十五章 Spring Cloud Alibaba 入门介绍
详见: 或者 官网。原创 2022-10-27 10:25:58 · 668 阅读 · 0 评论 -
第十六章 Spring Cloud Alibaba 基础环境搭建
Spring Cloud Alibaba基础环境搭建。原创 2022-10-28 11:25:55 · 1260 阅读 · 0 评论 -
第十七章 Nacos注册中心详解-入门介绍
官方:一个更易于构建云原生应用的动态服务发现(Nacos DKcovery )、服务配置(Nacos Contig)和服务管理平台。官方:一个更易于构建云原生应用的动态服务发现(Nacos)、服务配置(Nacos Contig)和服务管理平台.集注册中心+配置中心+服务管理平台 集注册中心+配置中心+服务管理平台。原创 2022-10-05 09:14:00 · 3248 阅读 · 0 评论 -
第十八章 Nacos注册中心详解-入门案例及服务通信
引入服务提供者 cloudalibaba-product-server9001 与 cloudalibaba-product-server9002 的。引入服务消费者 cloudalibaba-order-server9000 的。见 第十六章 Spring Cloud Alibaba 基础环境搭建。一、Spring Cloud Alibaba 基础环境搭建。2.1 创建基于Nacos的服务提供者。原创 2022-10-28 12:02:06 · 1846 阅读 · 0 评论 -
第十九章 Nacos统一配置中心详解
1.他管理配置文件方式是在自己所在服务器上形成一个版本库,因此不需要再创建远程版本库。2.nacos 作为统一配置中心管理配置文件时,同样也是存在版本控制。nacos作为饺一配置中心。原创 2022-10-31 11:08:05 · 1601 阅读 · 0 评论 -
第二十章 alibaba sentinel详解-简介及下载安装
Sentinel是阿里开源的项目,提供了流量控制、熔断降级、系统负载保护等多个维度来保障服务之间的稳定性。官网:https://github2012年,Sentinel诞生于阿里巴巴,其主要目标是流量控制。2013-2017年,Sentinel迅速发展,并成为阿里巴巴所有微服务的基本组成部分。它已在6000多个应用程序中使用,涵盖了几乎所有核心电子商务场景。2018年,Sentinel演变为一个开源项目。2020年,Sentinel Golang发布。原创 2022-11-01 14:26:02 · 1685 阅读 · 0 评论 -
第二十一章 alibaba sentinel详解-应用入门案例
如果要为这个资源匹配规则,就在这个微服务中引入 sentinel dashboard仪表盘,在仪表盘中配置规则。资源:Java中一切皆资源 -- 简单说就是一个微服务访问路径的 rest 接口。学习过程中就学习两大块,要保护哪个资源,要为这个资源匹配什么规则。如果要保护哪个资源,就在哪个微服务中引入sentinel。规则:流量规则 、熔断规则、负载规则等。原创 2022-11-01 16:48:23 · 618 阅读 · 0 评论 -
第二十二章 alibaba sentinel详解-各种规则的应用
原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。如果没有配置规则,这1s内来多少个请求就要处理多少个请求。如果配置规则,例如1s内可以访问5个请求,若超出5个的请求则视为拒接请求。原创 2022-11-02 11:37:06 · 677 阅读 · 0 评论 -
第二十三章 alibaba sentinel详解-sentinel持久化
直接使用dashboard和sentinel配置各种规则时,默认是存在了内存直接使用dashboard和sentinel配置各种规则时,默认是存在了内存中。如果服务器重启那么数据就会丢失,从而Sentinel提供了5中持久化的方式,将各种配置数据进行持久化,若服务器重启就重新加载持久化的数据,防止数据丢失。 目前 Sentinel 中默认实现了5种规则持久化的方式,分别是:file、redis、nacos、zk和apollo。 可以在 sentinel 控制台中编辑 限流配原创 2022-11-08 17:04:35 · 1233 阅读 · 0 评论 -
SpringCloud Alibaba版本与各组件版本对应关系说明
Spring Cloud Alibaba对应的 Spring Cloud版本及Spring Boot版本的说明。Spring Cloud Alibaba组件的版本关系。原创 2022-10-05 16:57:12 · 3312 阅读 · 0 评论