注解使用分布式锁,可以很优雅的在需要微服务接口上使用,不需要大量的代码侵入,思路主要是借用面向切面开发的优势.
一.自定义注解(用于加在分布式接口上)
需要给注解添加key属性,方便多个接口使用,同时设置ElementType为METHOD
![](https://img.haomeiwen.com/i14887867/baab11bcfe921ec3.png)
二.开发切面
代码如下,使用环绕通知,把分布式锁的逻辑加入到切面
![](https://img.haomeiwen.com/i14887867/58baebb710db8fd3.png)
抽取一下执行业务的代码,注意超时设置60,是为了方便测试锁的情况,具体时间根据需要来设置
![](https://img.haomeiwen.com/i14887867/e9f679f2d1f7cbeb.png)
三.在分布式接口中使用注解
当微服务只有一个需要加锁的接口时可以只用默认的key,多个接口则需要加入具体的key,真正加锁时的key,是类名+自定义key
![](https://img.haomeiwen.com/i14887867/16edc4c6f3e447cd.png)
网友评论