springboot使用redisson作为分布式锁的一种实现方式
redisson是一个不错的开源作品,在最近的项目中主要用到它的分布式锁,今天就来谈谈springboot是如何使用redisson作为分布式锁的。 引入重要的两个依赖,一个是spring-boot-starter-data-redis,一...
redisson是一个不错的开源作品,在最近的项目中主要用到它的分布式锁,今天就来谈谈springboot是如何使用redisson作为分布式锁的。 引入重要的两个依赖,一个是spring-boot-starter-data-redis,一...
在前面的一篇文章《使用ThreadLocal和AOP做线程缓存提高性能,缩短API网关响应时间》中介绍了使用自定义注解和spring aop实现本地线程缓存。今天介绍一下springboot项目使用自定义注解和aop记录类名方法名参数耗时信...
dubbo是一个特别棒的soa框架,但是有时候我们会考虑对其进行扩展,实现一些自定义的功能。今天我们就来简单说说通过dubbo提供的com.alibaba.dubbo.rpc.Filter接口实现自定义的拦截器,扩展dubbo的功能。 du...
在电商促销或一些直播小游戏中,抽奖是一种比较常见的玩法。很多时候,展现给用户的可能是一个大转盘,如下: 通常我们会给出一堆奖品,每个奖品有各自的中奖概率,而且每个奖品可能还有库存的概念,就是说已经被抽完了的奖品是不再参与抽奖的。就拿陌陌里的...
在前面的一篇文章《java.util.Timer使用详解及注意事项》中讲到了使用java.util.Timer实现定时任务,其中也讲到了使用java.util.Timer存在一些缺陷和不足。从JDK1.5开始,JDK中增加了接口java.u...
使用场景 一个调用请求(Request)到达应用(Application)后,应用处理完成并返回结果(Response)的这一时间段内,如在处理这一请求(Request)过程中出行如下两种情形: 调用了较多的方法,且大部分方法都使用到了相同...