上一页 1 2 3 4 5 6 7 ··· 23 下一页
摘要: 前言 关于读写锁,大家应该都了解JDK中的ReadWriteLock, 当然Redisson也有读写锁的实现。 所谓读写锁,就是多个客户端同时加读锁,是不会互斥的,多个客户端可以同时加这个读锁,读锁和读锁是不互斥的 Redisson中使用RedissonReadWriteLock来实现读写锁,它是R 阅读全文
posted @ 2020-03-22 08:05 一枝花算不算浪漫 阅读(1932) 评论(0) 推荐(1) 编辑
摘要: 前言 前面已经学习了Redission可重入锁以及公平锁的原理,接着看看Redission是如何来实现RedLock的。 RedLock原理 RedLock是基于redis实现的分布式锁,它能够保证以下特性: 互斥性:在任何时候,只能有一个客户端能够持有锁;避免死锁: 当客户端拿到锁后,即使发生了网 阅读全文
posted @ 2020-03-21 09:37 一枝花算不算浪漫 阅读(5281) 评论(2) 推荐(3) 编辑
摘要: 前言 前面分析了Redisson可重入锁的原理,主要是通过lua脚本加锁及设置过期时间来保证锁执行的原子性,然后每个线程获取锁会将获取锁的次数+1,释放锁会将当前锁次数-1,如果为0则表示释放锁成功。 可重入原理和JDK中的可重入锁都是一致的。 Redisson公平锁原理 JDK中也有公平锁和非公平 阅读全文
posted @ 2020-03-20 11:56 一枝花算不算浪漫 阅读(2862) 评论(0) 推荐(0) 编辑
摘要: 前言 主流的分布式锁一般有三种实现方式: 数据库乐观锁 基于Redis的分布式锁 基于ZooKeeper的分布式锁 之前我在博客上写过关于mysql和redis实现分布式锁的具体方案:https://www.cnblogs.com/wang-meng/p/10226618.html里面主要是从实现原 阅读全文
posted @ 2020-03-19 16:17 一枝花算不算浪漫 阅读(3548) 评论(0) 推荐(0) 编辑
摘要: 说明 这里文章大多为复习内容,内容精简干练,为原有基础知识回顾 ArrayList,LinkedList 使用到的工具类 System.arraycopy(srcElements, srcIndex, targetElement, tarIndex, srcLength);Arrays.copyOf 阅读全文
posted @ 2020-03-01 14:22 一枝花算不算浪漫 阅读(734) 评论(0) 推荐(0) 编辑
摘要: 说明 原创不易,如若转载 请标明来源! 欢迎关注本人微信公众号:壹枝花算不算浪漫 更多内容也可查看本人博客:一枝花算不算浪漫 前言 前情回顾 上一讲我们讲解了Hystrix在配合feign的过程中,一个正常的请求逻辑该怎样处理,这里涉及到线程池的创建、HystrixCommand的执行等逻辑。 如图 阅读全文
posted @ 2020-01-17 07:24 一枝花算不算浪漫 阅读(1214) 评论(0) 推荐(0) 编辑
摘要: 说明 原创不易,如若转载 请标明来源! 欢迎关注本人微信公众号:壹枝花算不算浪漫 更多内容也可查看本人博客:一枝花算不算浪漫 前言 前情回顾 上一讲我们讲了配置了feign.hystrix.enabled=true之后,默认的Targeter就会构建成HystrixTargter, 然后通过对应的H 阅读全文
posted @ 2020-01-16 08:44 一枝花算不算浪漫 阅读(718) 评论(0) 推荐(0) 编辑
摘要: 说明 原创不易,如若转载 请标明来源! 欢迎关注本人微信公众号:壹枝花算不算浪漫 更多内容也可查看本人博客:一枝花算不算浪漫 前言 前情回顾 上一个系列文章讲解了Feign的源码,主要是Feign动态代理实现的原理,及配合Ribbon实现负载均衡的机制。 这里我们讲解一个新的组件Hystrix,也是 阅读全文
posted @ 2020-01-15 10:41 一枝花算不算浪漫 阅读(894) 评论(0) 推荐(0) 编辑
摘要: 前言 想说的话 这里已经梳理完Eureka、Ribbon、Feign三大组件的基本原理了,今天做一个总结,里面会有一个比较详细的调用关系流程图。 说明 原创不易,如若转载 请标明来源! 博客地址:一枝花算不算浪漫 微信公众号:壹枝花算不算浪漫 总结 今天抽了一下午时间又复习了Eureka、Ribbo 阅读全文
posted @ 2020-01-13 10:18 一枝花算不算浪漫 阅读(730) 评论(1) 推荐(0) 编辑
摘要: 前言 前情回顾 上一讲我们已经知道了Feign的工作原理其实是在项目启动的时候,通过JDK动态代理为每个FeignClinent生成一个动态代理。 动态代理的数据结构是:ReflectiveFeign.FeignInvocationHandler。其中包含target(里面是serviceName等 阅读全文
posted @ 2020-01-12 08:33 一枝花算不算浪漫 阅读(1332) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 23 下一页