AQS
未读
并发编程系列-同步器实现三 CountDownLatch
关于CountDownLatch,在项目中使用的场景还是比较多的,也是基于AQS的一种实现,称做计数器或者闭锁。每个线程可以拿到一个资源,当资源都释放后会有一个总的线程来继续执行,起到线程间通信的作用。
AQS
未读
并发编程系列-同步器实现一 ReentrantLock Condition
上一篇介绍了ReentrantLock竞争锁及释放锁的过程,从源码的角度分析了过程。此篇会继续基于ReentrantLock来讲讲Condition条件变量,condition是和lock绑定的,一个lock可以绑定多个condition条件,可以使多个线程的能基于条件顺序执行;
java
未读
redis之哨兵模式搭建
前言闲暇之余,搭建了个redis的哨兵系统。针对,redis的主从虽然能保证数据的冷备份,方便进行故障恢复,或者主从实现读写分离,能够负载读压力,但是存在一个问题是:故障恢复无法自动化,因为有了哨兵,进一步提高系统的可用性。作用1、监控:检测主、从节点是否正常2、自动故障恢复3、配置提供者:给客户端
其它
未读
EasyCode-代码模板生成工具
whatEasyCode是基于IntelliJIDEAUltimate版开发的一个代码生成插件,主要通过自定义模板(基于velocity)来生成各种你想要的代码。why项目中添加新的数据表时,可以直接生成基于自定义模板的基础类,节省基础编码开发时间,提高效率。how1、安装插件Settings-&g
java
未读
memcached-session-manager实战
项目中的单体应用使用的session共享机制是基于memcached做的同步复制,在做登录的重构的时候,发现了一个自动退出登录的问题,所谓自动退登,就是用户在未使用系统的一段时间后登录态丢失,需要重新进行一次登录操作,这是一种正常现象,但是如果保持登录的时间没有按我们设定的时长维持的话,就需要一些额