现在是想单机模拟一个公平锁加锁解锁的流程。
一个接口正常访问肯定是没有问题的。
现在是想模拟一个,先没有拿到锁,后来可以拿到锁的流程,看了代码,是有锁等待机制的。
现在的操作是现在redis里面存了一个key
调用接口,目前接口处于等待状态。
删除redis中的键,但是这个时候接口没有拿到锁,还是处于一个等待的状态,直到超时结束。
请问是流程有哪里不对吗?请问应该如何模拟这个流程呢?
不用去删redis的值,你在代码里打上断点,先调用一次接口,让他进入断点模拟业务。之后再调用接口,这时候第二次的接口就在等待锁中。这时候你再让第一个接口请求跳过断点执行完毕,这样第二个请求就可以拿到锁进入接口。
扫一扫访问 Blade技术社区 移动端