SpringCloud
文章平均质量分 90
渝州居士
这个作者很懒,什么都没留下…
展开
-
SpringBoot、SpringCloud、SpringCloud Alibaba版本对应关系
随着SpringBoot和SpringCloud的发展,有些服务进入停更运维状态,一些新的框架出现,在开发微服务的时候不同组件的版本对应关系也是不可忽视的问题,如果版本不对应,可能会出现很多莫名的错误,给开发带来一些不必要的麻烦,进而也会影响项目的开发进度,本文就此对微服务开发常用的三大组件SpringBoot、SpringCloud、SpringCloud Alibaba版本对应关系进行整理。原创 2024-07-17 10:58:09 · 812 阅读 · 0 评论 -
SpringCloud搭建微服务之Micrometer分布式链路追踪
由于Spring Cloud Sleuth最新版本只支持Spring Boot 2.7.x,核心项目已经迁移到Micrometer Traceing项目,Spring Boot 3.x版本要实现分布式链路追踪需要集成Micrometer原创 2024-03-18 10:51:17 · 1400 阅读 · 0 评论 -
SpringCloud搭建微服务之Circuit Breaker断路器
Circuit breaker是一套规范和接口,落地实现是Resilience4j,Resilience4j是一个专为函数式编程设计的轻量级容错库,Resilience4j提供高阶函数(装饰器),以通过断路器、速率限制器、重试或隔板增强任何功能接口、lambda表达式或方法引用。可以在任何函数式接口、lambda表达式或方法引用上堆叠多个装饰器,优点是可以选择需要的装饰器原创 2024-03-14 10:45:01 · 2142 阅读 · 0 评论 -
SpringCloud搭建微服务之Consul服务配置
前面有介绍过Consul既可以用于服务注册和发现,也可以用于服务配置,本文主要介绍如何使用Consul实现微服务的配置中心,有需要了解如何安装Consul的小伙伴,请查阅,这里就不再重复。原创 2024-02-29 16:28:49 · 1555 阅读 · 0 评论 -
SpringCloud搭建微服务之Consul服务注册与发现
Consul是由HashiCorp公司使用Go语言开发的一款开源工具,主要用于实现分布式系统的服务发现和服务配置,其内置了服务注册与发现框架、分布式一致性协议实现、健康检查、Key-Value存储、多数据中心方案。Consul具有高可移植性,支持Linux、Windows和Max OS X等多个操作系统,其安装包只是一个可执行文件,方便部署,也可与Docker等轻量级容器无缝配合。Consul使用Raft算法来保证一致性,相比使用Paxos算法更简单。原创 2024-02-29 11:33:04 · 1965 阅读 · 2 评论 -
SpringCloud搭建微服务之Gateway+Jwt实现统一鉴权
在微服务项目中,需要对整个微服务系统进行权限校验,通常有两种方案,其一是每个微服务各自鉴权,其二是在网关统一鉴权,第二种方案只需要一次鉴权就行,避免了每个微服务重复鉴权的麻烦,本文以网关统一鉴权为例介绍如何搭建微服务鉴权项目原创 2023-03-24 11:56:09 · 4135 阅读 · 2 评论 -
SpringCloud搭建微服务之Vault密钥管理
Vault是一款管理密钥和保护敏感数据的组件,用于保护、存储和严格控制对令牌、密码、证书和加密密钥的访问,可以使用UI客户端、CLI和HTTP API访问密钥和其他敏感数据原创 2023-01-31 19:00:00 · 2280 阅读 · 1 评论 -
SpringCloud搭建微服务之OAuth2实现SSO单点登录
SSO单点登录实现方式有多种,在这里不介绍理论,本文只讨论采用spring-security-oauth2来实现,本文共有三个服务,一个权限认证中心,两个客户端原创 2022-11-28 18:40:06 · 2066 阅读 · 0 评论 -
SpringCloud搭建微服务之OAuth2.1认证和授权
Spring Boot新版本已经不在支持Spring Security OAuth,而是将资源服务和客户端集成到Spring Security 5.2.x版本中,认证服务单独成一个项目为Spring Authorization Server原创 2022-10-10 06:30:00 · 6655 阅读 · 13 评论 -
SpringCloud搭建微服务之OAuth2认证和授权
OAuth2.0是一个标准的授权协议,实际上它是用户资源和第三方应用之间的一个中间层,把资源和第三方应用隔开,使得第三方应用无法直接访问资源,第三方应用要访问资源需要通过提供凭证获得OAuth2.0授权,从而起到保护资源的作用原创 2022-10-04 20:24:01 · 3521 阅读 · 0 评论 -
SpringCloud搭建微服务之Sleuth分布式请求链路跟踪
Spring Cloud Sleuth是Spring Cloud提供的一套完整的用于分布式系统中服务跟踪解决方案,常用于微服务项目的实时监控和快速定位错误异常。Zipkin用于提供链路追踪的可视化功能,其实现原理是,在服务调用的请求和响应中加入ID,表明上下游请求的关系,利用这些信息,可以可视化地分析服务调用链路和服务间的依赖关系原创 2022-10-04 06:15:00 · 874 阅读 · 0 评论 -
SpringCloud搭建微服务之Stream消息驱动
Spring Cloud Stream是一个构建消息驱动的微服务框架,屏蔽底层消息中间件的差异,降低切换成本,统一消息的编程模型。应用程序通过inputs或者outputs来与Spring Cloud Stream中binder对象交互,通过配置的binding绑定,其中Spring Cloud Stream的binder对象负责与消息中间件交互,通过使用Spring Integration来连接消息代理中间件以实现消息事件驱动原创 2022-10-01 10:00:00 · 664 阅读 · 0 评论 -
SpringCloud搭建微服务之Bus消息总线
Spring Cloud Bus是用来将分布式系统的节点与轻量级消息系统链接起来的框架,整合了Java的事件处理机制和消息中间件的功能,目前支持RabbitMQ和Kafka两种消息中间件。其功能是管理和传播分布式系统间的消息,用于广播状态更改、事件推送和微服务间通信通道,配合Spring Cloud Config使用可以实现配置的动态刷新原创 2022-09-14 18:24:00 · 972 阅读 · 0 评论 -
SpringCloud搭建微服务之Config配置中心
SpringCloud Config分为服务端和客户端两部分,服务端也称为分布式配置中心,它是一个独立的微服务应用,用来连接配置服务器并为客户端提供获取配置信息,加密/解密信息等访问接口。客户端则是通过指定的配置中心来管理应用资源,以及与业务相关的配置内容,并在启动的时候从配置中心获取和加载配置信息原创 2022-09-13 18:19:15 · 758 阅读 · 0 评论 -
SpringCloud搭建微服务之Gateway网关
Gateway是在Spring生态系统之上构建的API网关服务,旨在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能,基于WebFlux框架实现,而WebFlux框架底层又使用了高性能的Reactor模式通信框架Netty。常用功能有反向代理、鉴权、流量控制、熔断和日志监控原创 2022-09-12 18:56:08 · 2451 阅读 · 0 评论 -
SpringCloud搭建微服务之Zuul网关
Zuul是一种提供动态路由、监视、弹性、安全性等功能的边缘服务,是一个基于JVM路由和服务端的负载均衡器,在Spring Cloud框架中,Zuul的角色是网关,负责接收所有REST请求,然后进行内部转发,是微服务提供者集群的流量入口原创 2022-09-02 18:45:00 · 2124 阅读 · 0 评论 -
SpringCloud搭建微服务之Hystrix熔断器
Hystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统中,许多依赖不可避免的会调用失败,比如超时、异常等,Hystrix能够保证在一个依赖出问题的情况下,不会导致整个系统服务失败,避免级联故障发生,以提高分布式系统的弹性。当某个服务发生故障后,通过断路器的故障监控向调用方返回一个符合预期的、可处理的备选响应(FallBack),而不是长时间的等待或者抛出调用方无法处理的异常,这样就保证了服务调用方的线程不会被长时间、不必要地占用,从而避免了故障在分布式系统中的蔓延,乃至雪崩......原创 2022-08-17 18:43:56 · 635 阅读 · 0 评论 -
SpringCloud搭建微服务之OpenFeign远程调用
Feign是一个声明式WebService客户端,其使用方法是定义一个服务接口,然在接口上添加注解,Spring Cloud对Feign进行了封装,使其支持Spring MVC标准注解和HttpMessageConverters,Feign可以与Eureka和Ribbon组合使用以支持负载均衡......原创 2022-08-14 10:17:12 · 503 阅读 · 0 评论 -
SpringCloud搭建微服务之Ribbon负载均衡和远程调用
Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡工具,提供客户端的软件负载均衡算法和服务调用原创 2022-08-11 09:22:37 · 450 阅读 · 0 评论 -
SpringCloud搭建微服务之Eureka服务注册与发现
有了服务注册中心,就需要服务提供者来给整个微服务集群提供服务了,每一个被Eureka治理的微服务实例都包含一个Eureka Client组件,服务提供者提供一个REST接口给其他服务调用原创 2022-08-09 19:00:00 · 262 阅读 · 0 评论 -
SpringCloud搭建微服务之Eureka服务注册中心
Eureka采用CS设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心,系统中的其他微服务,使用Eureka客户端连接到Eureka Server并维持心跳连接。Eureka包含Eureka Server和Eureka Client两个组件,Eureka Server提供服务注册服务,各个微服务节点通过配置启动后,会在Eureka Server中进行注册,这样Eureka Server中的服务注册表中将会存储所有可用服务节点的信息,这些信息可用再界面直接看到......原创 2022-08-08 20:00:00 · 423 阅读 · 0 评论