SpringCloud
文章平均质量分 94
UndefinedException
求求你们别卷了!!!
展开
-
SpringCloudAlibaba-3.分布式事务(Seata)
Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。Seata 中有三大模块,分别是TM、RM 和 TC。其中TM和RM是作为 Seata 的客户端与业务系统集成在一起,TC作为 Seata 的服务端独立部署。分布式事务处理过程的一ID+三组件模型:全局唯一的事务ID:事务协调器,维护全局事务的运行状态,负责协调并驱动全局事务的提交或回滚;:控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交。...原创 2022-08-27 20:48:48 · 453 阅读 · 0 评论 -
SpringCloudAlibaba-2.熔断、降级与限流(Sentinel)
上面方式的问题:1 系统默认的,没有体现我们自己的业务要求。2 依照现有条件,我们自定义的处理方法又和业务代码耦合在一块,不直观。3 每个业务方法都添加一个兜底的,那代码膨胀加剧。4 全局统一的处理方法没有体现。1.自定义限流处理类- CustomerBlockHandler{return new CommonResult(2020,"自定义的限流处理信息......CustomerBlockHandler");}}2.修改Controller{...原创 2022-08-27 14:46:55 · 1093 阅读 · 0 评论 -
SpringCloudAlibaba-1.服务注册和配置中心(Nacos)
Nacos是一个更易于构建的动态服务发现、配置管理和服务管理平台。就是注册中心+配置中心的组合。()其实Nacos支持AP/CP两种模式,可以!何时选择使用何种模式?一般来说,如果不需要存储服务级别的信息且服务实例是通过nacos-client注册,并能够保持心跳上报,那么就可以选择AP模式。当前主流的服务如 Spring cloud 和 Dubbo 服务,都适用于AP模式,AP模式为了服务的可能性而减弱了一致性,因此AP模式下只支持注册临时实例。......原创 2022-08-26 08:07:41 · 282 阅读 · 0 评论 -
SpringCloud-8.分布式请求链路跟踪(Sleuth(zipkin))
在微服务框架中,一个客户端发起的请求在后端系统中会经过不同的的调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现或都会引起整个请求最后的失败。原创 2022-08-24 11:04:11 · 174 阅读 · 0 评论 -
SpringCloud-7.消息驱动(Spring Cloud Stream)
Spring Cloud Stream 是一个构建消息驱动微服务的框架。应用程序通过inputs或outputs来与 Spring Cloud Stream中binder对象。通过我们配置来进行binding(绑定) ,而 Spring Cloud Stream 的binder对象负责与。所以,我们只需要搞清楚如何与 Spring Cloud Stream 交互就可以方便使用的方式。Spring Cloud Stream 为一些供应商的消息中间件产品提供了个性化的自动化配置实现。原创 2022-08-24 10:24:17 · 233 阅读 · 0 评论 -
SpringCloud-6.服务总线(SpringCloud Bus)
什么是总线?在微服务架构的系统中,通常会使用轻量级的消息代理来构建一个共用的消息主题,并让系统中所有微服务实例都连接上来。由于该主题中产生的消息会被所有实例监听和消费,所以称它为消息总线。在总线上的各个实例,都可以方便地广播一些需要让其他连接在该主题上的实例都知道的消息。Spring Cloud Bus是用来将分布式系统的节点与轻量级消息系统链接起来的框架,它整合了Java的事件处理机制和消息中间件的功能,能管理和传播分布式系统间。原创 2022-08-23 16:26:28 · 339 阅读 · 0 评论 -
SpringCloud-5.服务配置(SpringCloud Config)
微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态的配置管理设施是必不可少的。SpringCloud提供了来解决这个问题.原创 2022-08-23 11:40:14 · 232 阅读 · 0 评论 -
SpringCloud-4.服务网关(GateWay)
自定义全局GlobalFilter的作用:全局日志记录、统一网关鉴权... ...需要自定义过滤器类,实现,Ordered接口@Component{@Override//获取请求参数//名字为空就设置错误响应码然后返回System.out.println("****用户名为null,无法登录");//设置响应码//返回}//名字不为空就继续执行}@Override{return 0;}}原创 2022-08-22 21:11:06 · 374 阅读 · 0 评论 -
SpringCloud-3.服务熔断与降级(Hystrix)
Hystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等,Hystrix能够保证在一个依赖出问题的情况下,不会导致整体服务失败,避免级联故障,以提高分布式系统的弹性。“断路器”本身是一种开关装置,当某个服务单元发生故障之后,通过断路器的故障监控(类似熔断保险丝),向调用方返回一个符合预期的、可处理的备选响应(FallBack),而不是长时间的等待或者抛出调用方无法处理的异常。原创 2022-08-22 10:57:32 · 713 阅读 · 0 评论 -
SpringCloud-2.服务调用(Ribbon、OpenFeign)
作用:根据特定算法中从服务列表中选取一个要访问的服务-轮询RandomRule-随机选择RetryRule-先按照轮询策略获取服务,如果获取服务失败则在指定时间内会进行重试,获取可用的服务-对轮询策略的扩展,响应速度越快的实例选择权重越大,越容易被选择-先过滤掉由于多次访问故障而处于断路器跳闸状态的服务,然后选择一个并发量最小的服务-先过滤掉故障实例,再选择并发较小的实例-默认规则,复合判断server所在区域的性能和可用性选择服务器。原创 2022-08-21 11:37:40 · 927 阅读 · 0 评论 -
SpringCloud-1.服务注册与发现(Eureka/Zookeeper/Consul)
Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用Go 语言开发。提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格,总之Consul提供了一种完整的服务网格解决方案。特点:服务发现-提供HTTP和DNS两种发现方式。健康检测-支持多种方式,HTTP、TCP、Docker、Shell脚本定制化监控K-V存储多数据中心可视化Web界面。原创 2022-08-20 21:12:34 · 578 阅读 · 0 评论 -
SpringCloud-Rest微服务工程的构建
上面是几年前的微服务常用的组件,最近几年springcloudAlibaba正逐渐成为主流。下面列出了最近较流行的微服务架构,其亮点是新增加了若干Alibaba的微服务组件,如nacos、sentinel。:我的idea默认不会识别出springboot的配置和配置文件。这样一来,我们建立了三个子模块,可以实现基本的业务。5. Service接口与实现类。,是Spring提供的用于访问Rest服务的。4. mapper映射文件。3. mapper接口。的方法, 是一种简单便捷的访问。原创 2022-08-20 16:32:49 · 457 阅读 · 0 评论