SpringCloud
文章平均质量分 75
SpringCloud各组件使用及搭建
如果不丑还是挺帅的吧
练习时长两年半
展开
-
CAP理论与Nacos,Eureka,Zookerper之间的联系
CAP原创 2023-02-14 10:36:09 · 846 阅读 · 1 评论 -
SpringBoot+Dubbo+Zookerper搭建微服务
SpringBoot+Dubbo+Zookerper搭建微服务原创 2022-09-08 10:35:10 · 560 阅读 · 0 评论 -
Gateway结合Redis使用令牌桶算法实现接口限流
计数器算法采用计数器实现限流有点简单粗暴,一般我们会限制一秒钟的能够通过的请求数,比如限流qps为100,算法的实现思路就是从第一个请求进来开始计时,在接下去的1s内,每来一个请求,就把计数加1,如果累加的数字达到了100,那么后续的请求就会被全部拒绝。等到1s结束后,把计数恢复成0,重新开始计数。具体的实现可以是这样的:对于每次服务调用,可以通过AtomicLong#incrementAndGet()方法来给计数器加1并返回最新值,通过这个最新值和阈值进行比较。这种实现方式,相信大家都知道有一个弊端:如果原创 2022-06-29 12:45:44 · 490 阅读 · 1 评论 -
SpringCloud Alibaba分布式事务Seata AT模式实战
SpringCloud Eureka + Seata实战原创 2022-06-23 22:20:45 · 414 阅读 · 0 评论 -
使用Redis官方推荐Redlock实现分布式锁
前言:实现分布式锁的几种方案1.Redis实现 (推荐)2.Zookeeper实现3.数据库实现项目中使用Eureka注册中心,所以未研究Zookeeper实现.什么是分布式锁分布式锁的特征: 「互斥性」: 任意时刻,只有一个客户端能持有锁。 「锁超时释放」:持有锁超时,可以释放,防止不必要的资源浪费,也可以防止死锁。 「可重入性」:一个线程如果获取了锁之后,可以再次对其请求加锁。 「高性能和高可用」:加锁和解锁需要开销尽可能低,同时也要保证高原创 2022-04-24 20:12:12 · 2262 阅读 · 0 评论 -
Spring cloud Config实现配置拉取及手动刷新
前言使用了SpringCloud的原生配置中心config后,会发现当配置文件更新后,配置中心的客户端无法获取更新后的信息,这是由于配置中心的缓存机制导致的,而SpringCloud也提供了刷新的两种方式,今天就处记录一下其中一种——手动刷新的配置过程。Config服务搭建依赖配置config有两种拉取配置文件的方式,一种是从git上拉取,一种是从本地拉取,本文从git拉取配置文件并实现手动刷新.启动类加上@EnableConfigServise注解U..原创 2022-04-21 17:35:09 · 1336 阅读 · 0 评论 -
gateway实现路由转发和负载均衡
与ribbon不同,gatway通过服务注册中心的服务名/接口实现负载均衡的能力.gateway配置文件eg:通过配置routes拦截请求,此处根据Path来断言匹配不同的路径.根据predicates断言拦截到请求/user请求,转发至注册中心名为userservice的服务上.gateway通过注册中心的服务名开启loadbalancer.简称lb,默认使用轮询策略userservice配置开启prefer-ip-address:true,不然会gateway会找不到服.原创 2022-04-19 21:36:06 · 3081 阅读 · 3 评论 -
gateway确保服务只能通过gateway转发,禁止直接调用接口访问
Spring Cloud Gateway 的目标,不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全,负载均衡和限流.用户直接访问服务,则失去了gateway的意义.用户不能直接访问服务,必须在gateway层面进行鉴权后在对服务发起请求.实现对用户的鉴权以及接口的限流.并且可以在gateway层面实现对服务的负载均衡.Gateway实现请求统一转发实现思路:所有的请求都需要通过gateway进行转发,所以就需要在gateway层面对用户请求添加一个原创 2022-04-16 21:36:20 · 6405 阅读 · 0 评论