question:
in the actual project, I use redis as the resource lock. Only the thread that acquires the lock is allowed to execute. And then finally release the lock. The thread was blocked for 16 minutes before the resource was released.
try to solve:
I can"t solve it even if I try to increase the number of redispool. Then I looked at some of the source code of jedispool. The configuration of 16
minutes or 960
seconds or 960000
milliseconds 965
or 965000
cannot be found in the default properties.
where I release resources
[INFO] 2019-01-29 04:00:48 ---> ---------------LOCK_PREFIX_c3372edaae224b409ce87684d6abc125-------------------
[INFO] 2019-01-29 04:00:48 ---> -----------------------------LOCK_PREFIX_c3372edaae224b409ce87684d6abc125
[INFO] 2019-01-29 04:16:52 ---> ---------------LOCK_PREFIX_c3372edaae224b409ce87684d6abc125-------------------
recently found that congestion can occur wherever redis is called to delete key. The congestion time is also about 16 minutes. Basically, it is redis.delete (key) that is the problem. But we still don"t know the specific reason and the solution.