Spring Cloud Alibaba
文章平均质量分 79
Spring Cloud Alibaba
飘然渡沧海
这个作者很懒,什么都没留下…
展开
-
用sentinel熔断比例阈值改不了,设置慢调用比例没效果
其实遇见这种情况,把这一行配置删除,重新配置就行了原创 2022-07-02 09:08:14 · 617 阅读 · 0 评论 -
Seata使用-2.Seata-Server安装
Seata-Server安装分布式事务解决方案2PC即两阶段提交协议,是将整个事务流程分为两个阶段,P是指准备阶段,C是指提交阶段。准备阶段(Prepare phase)提交阶段(commit phase)举例:比如说相亲对象两个人去吃饭,店老板要求,先付钱在吃饭,这是男女双方提出了AA,也就是说只有男女双方都付钱,才能落座吃饭,但是只要两个人中有一个不统一付款就不能落座吃饭。准备阶段:老板要求男方付款,男方付款。老板要求女方付款,女方付款提交阶段:老板出餐,两人纷纷落座其实此例子就原创 2022-05-10 18:55:04 · 775 阅读 · 0 评论 -
Seata使用-1.分布式事务简介
分布式事务简介概念基础概念:事务ACIDA(Atomic):原子性,构成事务的所有操作,要么都执行完成,要么全部不执行,不可能出现部分成功部分失 败的情况。C(Consistency):一致性,在事务执行前后,数据库的一致性约束没有被破坏。比如:张三向李四转100元, 转账前和转账后的数据是正确状态这叫一致性,如果出现张三转出100元,李四账户没有增加100元这就出现了数 据错误,就没有达到一致性。I(Isolation):隔离性,数据库中的事务一般都是并发的,隔离性是指并发的两个事务的执行互不原创 2022-05-10 18:52:03 · 362 阅读 · 0 评论 -
Spring Cloud Alibaba -22.Sentinel持久化配置
Sentinel持久化配置我们首先需要知道:在Sentinel Dashboard中配置规则之后重启应用就会丢失,所以实际生产环境中需要配置规则的持久化实现,Sentinel提供多种不同的数据源来持久化规则配置,包括file,redis、nacos、zk。Sentinel规则持久化到Nacos将限流规则持久化进Nacos保存,只要刷新8401某个接口地址,Sentinel控制台的流控规则就能感应到,同时只要Nacos里面的配置不删除,针对8401上Sentinel的流控规则就持续有效。其实就是实现原创 2022-05-08 21:49:00 · 432 阅读 · 0 评论 -
Spring Cloud Alibaba -21.Sentinel整合OpenFegin
Sentinel整合OpenFegin根据之前的学习,我们已经学习过了包括Sentinel整合Ribbon,包括对OpenFegin的基本学习,那么这节课,我们就需要通过Sentinel来进行整合OpenFegin引入OpenFegin我们需要在当前的8084项目中引入对应的依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-clo原创 2022-05-08 21:42:04 · 648 阅读 · 1 评论 -
Spring Cloud Alibaba -20.OpenFeign超时时间控制 & OpenFeign日志打印
OpenFeign超时时间控制概念OpenFeign 客户端默认等待1秒钟,但是如果服务端业务超过1秒,则会报错。为了避免这样的情况,我们需要设置feign客户端的超时控制。解决办法由于OpenFeign 底层是ribbon 。所以超时控制由ribbon来控制。在yml文件中配置超时案例演示首先演示超时效果,我们现在9003/9004上设置一个延迟3秒执行的方法,来模仿长业务线调用。@GetMapping("/timeOut")public String timeOut() { tr原创 2022-05-08 21:36:26 · 997 阅读 · 0 评论 -
Spring Cloud Alibaba -19.OpenFeign基础应用
OpenFeign基础应用概念OpenFeign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用OpenFeign,可以做到使用HTTP请求访问远程服务,就像调用本地方法一样的,开发者完全感知不到这是在调用远程方法,更感知不到在访问HTTP请求,用法其实就是编写一个接口,在接口上添加注解即可。可以简单理解它是借鉴Ribbon的基础之上,封装的一套服务接口+注解的方式的远程调用器。OpenFeign能干什么它的宗旨是在编写Java Http客户端接口的时候变得更加容易,其底层整原创 2022-05-08 18:42:06 · 577 阅读 · 0 评论 -
Spring Cloud Alibaba -18.SentinelResource的fallback属性
Spring Cloud AlibabaSentinelResource的fallback属性fallback属性**概念:**fallback 函数名称,可选项,用于在抛出异常的时候提供 fallback 处理逻辑。fallback 函数可以针对所有类型的异常(除了 exceptionsToIgnore 里面排除掉的异常类型)进行处理。fallback 函数签名和位置要求:返回值类型必须与原函数返回值类型一致;方法参数列表需要和原函数一致,或者可以额外多一个 Throwable 类型的参数用于原创 2022-05-06 21:05:40 · 317 阅读 · 0 评论 -
Spring Cloud Alibaba -17.Sentinel服务熔断环境搭建
Spring Cloud AlibabaSentinel服务熔断环境搭建服务熔断:应对微服务雪崩效应的一种链路保护机制,类似保险丝。需要完成Sentinel整合Ribbon+openFeign,所以我们先要搭建环境,那么先从整合Ribbon开始环境搭建为了演示操作,所以在这里我们需要利用Ribbon进行负载均衡的调用,所以我们需要创建一个服务消费者cloudalibaba-consumer8084和两个服务提供者cloudalibaba-provider9003和cloudalibaba-prov原创 2022-05-06 21:05:24 · 279 阅读 · 0 评论 -
Spring Cloud Alibaba -16.@SentinelResource 自定义限流逻辑处理
Spring Cloud Alibaba@SentinelResource 自定义限流逻辑处理Sentinel 提供了@SentinelResource注解用于定义资源,并提供了AspectJ的扩展用于自定义资源,处理BlockException等。案例复习之前我们用过这个注解,同时了解了它的两个属性:value:资源名称,必须项(唯一,不能为空)blockHandler:对应处理BlockException的函数名称可选项.blockHandler函数访问需要public,返回类型需要与原方原创 2022-05-04 19:52:39 · 543 阅读 · 0 评论 -
Spring Cloud Alibaba -15.Sentinel 系统规则
Spring Cloud AlibabaSentinel 系统规则 Sentinel 系统自适应限流从整体维度对应用入口流量进行控制,结合应用的 Load、CPU 使用率、总体平均 RT、入口 QPS 和并发线程数等几个维度的监控指标,通过自适应的流控策略,让系统的入口流量和系统的负载达到一个平衡,让系统尽可能跑在最大吞吐量的同时保证系统整体的稳定性。系统规则 系统保护规则是从应用级别的入口流量进行控制,从单台机器的 load、CPU 使用率、平均 RT、入口 QPS 和并发线程数等几个维度监控原创 2022-05-04 19:27:46 · 305 阅读 · 0 评论 -
Spring Cloud Alibaba -14.Sentinel 热点规则
Spring Cloud AlibabaSentinel 热点规则概念何为热点?热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如:商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制热点参数限流会统计传入参数中的热点参数,并根据配置的限流阈值与模式,对包含热点参数的资源调用进行限流。热点参数限流可以看做是一种特殊的流量控制,仅对包含热点参数的资源调用原创 2022-04-26 23:30:00 · 467 阅读 · 0 评论 -
Spring Cloud Alibaba -13.Sentinel 熔断降级(简介,慢调用比例,异常比例,异常数)
Spring Cloud AlibabaSentinel 熔断降级基本介绍除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一。一个服务常常会调用别的模块,可能是另外的一个远程服务、数据库,或者第三方 API 等。例如,支付的时候,可能需要远程调用银联提供的 API;查询某个商品的价格,可能需要进行数据库查询。然而,这个被依赖服务的稳定性是不能保证的。如果依赖的服务出现了不稳定的情况,请求的响应时间变长,那么调用服务的方法的响应时间也会变长,线程会产生堆积,最终可能耗尽业原创 2022-04-26 22:45:00 · 927 阅读 · 8 评论 -
Spring Cloud Alibaba -12.流控规则-关联、预热、排队等待
Spring Cloud Alibaba关联首先我们先来回顾一下之前讲过的一些概念名词解释资源名:唯一名称,默认请求路径针对来源:Sentinel可以针对调用者进行限流,填写微服务名,默认default(不区分来源)阈值类型/单机阈值:QPS(每秒钟的请求数量):当调用该API的QPS达到阈值的时候,进行限流线程数:当调用该API的线程数量达到阈值的时候,进行限流是否集群:当前不需要集群流控模式:直接:API达到限流条件时,直接限流关联:当关联的资源达到阈值时,就限流自己原创 2022-04-26 22:15:00 · 560 阅读 · 0 评论 -
Spring Cloud Alibaba -11.Sentinel流控规则
Spring Cloud AlibabSentinel流控规则流控规则基本介绍名词解释资源名:唯一名称,默认请求路径针对来源:Sentinel可以针对调用者进行限流,填写微服务名,默认default(不区分来源)阈值类型/单机阈值:QPS(每秒钟的请求数量):当调用该API的QPS达到阈值的时候,进行限流线程数:当调用该API的线程数量达到阈值的时候,进行限流是否集群:当前不需要集群流控模式:直接:API达到限流条件时,直接限流关联:当关联的资源达到阈值时,就限流自己链原创 2022-04-26 21:45:00 · 137 阅读 · 0 评论 -
Spring Cloud Alibaba -10.Sentinel初始化监控
Spring Cloud AlibabaSentinel初始化监控搭建Sentinel项目Sentinel的官方文档网址:https://sentinelguard.io/zh-cn/docs/quick-start.html创建项目cloudalibaba-sentinel-service8401导入依赖:<!-- Nacos客户端依赖 --><dependency> <groupId>com.alibaba.cloud</groupId原创 2022-04-26 21:45:00 · 181 阅读 · 0 评论 -
Spring Cloud Alibaba -9.Sentinel介绍
Spring Cloud AlibabaSentinel介绍什么是Sentinel分布式系统的流量防卫兵:随着微服务的普及,服务调用的稳定性变得越来越重要。Sentinel以“流量”为切入点,在流量控制、断路、负载保护等多个领域开展工作,保障服务可靠性。特点:1.2. +丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。3. 完备的实时监控:S原创 2022-04-25 21:30:00 · 127 阅读 · 0 评论 -
Spring Cloud Alibaba -8.Nacos集群配置
Spring Cloud AlibabaNacos集群配置更改Nacos启动命令配置原理我们现在知道,想要启动Naocs只需要启动startup.sh命令即可,但是如果启动3个Nacos那?所以如果我们需要启动多个Nacos,其实Nacos本身默认启动就是集群模式。注意点:如果是linux虚拟机,需要分配至少4g以上内存Linux服务器上Nacos的集群配置cluter.conf这里开始正式配置集群,首先我们要更改cluter.conf这个配置文件,当然我们也需要备份,但是这里它的原始名称为:原创 2022-04-25 16:45:40 · 1015 阅读 · 0 评论 -
Spring Cloud Alibaba -7.Nacos集群架构说明&持久化切换配置
Spring Cloud AlibabaNacos集群架构说明 到目前为止,我们已经对Nacos的一些基本使用和配置已经掌握,但是这些还不够,我们还需要了解一个非常重要的点,就是Nacos的集群相关的操作,那我们就先从Nacos集群配置的概念说起Nacos支持三种部署模式单机模式 - 用于测试和单机试用集群模式 - 用于生产环境,确保高可用多集群模式 - 用于多数据中心场景集群部署说明参考网站:https://nacos.io/zh-cn/docs/cluster-mode-quick原创 2022-04-25 21:00:00 · 297 阅读 · 0 评论 -
Spring Cloud Alibaba -6.Nacos命名空间分组和DataID三者关系
Spring Cloud AlibabaNacos命名空间分组和DataID三者关系名词解释命名空间(Namespace) 用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。Namespace 的常用场景之一是不同环境的配置的区分隔离,例如开发测试环境和生产环境的资源(如配置、服务)隔离等。配置分组(Group) Nacos 中的一组配置集,是组织配置的维度之一。通过一个有意义的字符串(如 Buy 或 Trade )对配置集进行分组,从而区原创 2022-04-25 19:30:00 · 379 阅读 · 0 评论 -
Spring Cloud Alibaba -5.Nacos之服务配置中心
Spring Cloud Alibaba基础配置Nacos不仅仅可以作为注册中心来使用,同时它支持作为配置中心首先我们还是新建Model:cloudalibaba-config-3377pom文件 这里我们主要要引入的是此依赖,这个依赖依据在官网上可以找到:https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html#_an_example_of_using_nacos原创 2022-04-25 19:00:00 · 120 阅读 · 0 评论 -
Spring Cloud Alibaba -4.Nacos服务注册中心对比提升(CP,AP)
Spring Cloud AlibabaNacos服务注册中心对比提升各种服务注册中心对比服务注册与发现框架CAP模型控制台管理社区活跃度EurekaAP支持低(2.x版本闭源)ZookeeperCP不支持中ConsulCP支持高NacosAP/CP支持高CAP模型 计算机专家 埃里克·布鲁尔(Eric Brewer)于 2000 年在 ACM 分布式计算机原理专题讨论会(简称:PODC)中提出的分布式系统设计要考虑的三个核心原创 2022-04-25 18:15:00 · 728 阅读 · 0 评论 -
Spring Cloud Alibaba -3.Nacos服务消费者注册和负载均衡
Spring Cloud AlibabaNacos服务消费者注册和负载均衡创建一个消费者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原创 2022-04-24 18:09:43 · 748 阅读 · 0 评论 -
Spring Cloud Alibaba -2.Nacos服务提供者注册教程
Spring Cloud AlibabaNacos服务提供者注册Nacos代替Eureka Nacos可以直接提供注册中心(Eureka)+配置中心(Config),所以它的好处显而易见,我们在上节课成功安装和启动了Nacos以后就可以发现Nacos本身就是一个小平台,它要比之前的Eureka更加方便,不需要我们在自己做配置。Nacos服务注册中心 服务发现是微服务架构中的关键组件之一。在这样的架构中,手动为每个客户端配置服务列表可能是一项艰巨的任务,并且使得动态扩展极其困难。Nacos Di原创 2022-04-24 17:49:08 · 188 阅读 · 0 评论 -
Spring Cloud Alibaba- 主要功能简介与主要组件
Spring Cloud Alibaba微服务简介架构的演变随着互联网的发展,网站应用的规模也不断的扩大,进而导致系统架构也在不断的进行变化,从互联网早起到现在,系统架构大体经历了下面几个过程:单体应用架构:把所有功能都集中在一个应用中,统一部署,开发成本、部署成本和维护成本低优点:项目架构简单,适合用户量少的项目,开发成本低,项目部署在一个节点上,维护方便。缺点:功能集中在一个工程中,对于大型项目比一开发和维护,项目模块紧耦合,单点容错率低,无法对不同的模块功能进行针对性的优化和水平拓展原创 2022-04-22 21:00:00 · 20281 阅读 · 1 评论 -
Spring Cloud Alibaba -1.Nacos下载和安装
Spring Cloud AlibabaNacos介绍 Nacos(Naming Configuration Service) 是一个易于使用的动态服务发现、配置和服务管理平台,用于构建云原生应用程序 服务发现是微服务架构中的关键组件之一。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架原创 2022-04-22 21:15:00 · 1196 阅读 · 0 评论