Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

基于Redis的分布式可重入锁

License

NotificationsYou must be signed in to change notification settings

imadcn/redislock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build StatusMaven CentralLicense

是什么

redislock 是一个基于Redis的分布式可重入锁

怎么用

maven

<dependency>  <groupId>com.imadcn.framework</groupId>  <artifactId>lock</artifactId>  <version>0.0.1</version></dependency>

XML配置

<?xml version="1.0" encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xmlns:p="http://www.springframework.org/schema/p"xmlns:lock="http://code.imadcn.com/schema/lock"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context.xsdhttp://code.imadcn.com/schema/lockhttp://code.imadcn.com/schema/lock/lock.xsd"><!-- redis pool--><beanid="jedisPoolConfig"class="redis.clients.jedis.JedisPoolConfig"><propertyname="testOnBorrow"value="false" /><propertyname="testOnReturn"value="true" /></bean><!-- redis sentinel--><beanid="redisSentinelConfig"class="com.imadcn.framework.lock.config.RedisSentinelConfig"><propertyname="masterName"value="mymaster" /><propertyname="sentinelAddrs"value="127.0.0.1:26380,127.0.0.1:26381,127.0.0.1:26382" /></bean><!-- redis connectionFactory--><beanid="connectionFactory"class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"destroy-method="destroy"><constructor-argindex="0"ref="redisSentinelConfig" /><constructor-argindex="1"ref="jedisPoolConfig" /></bean><beanid="stringRedisSerializer"class="org.springframework.data.redis.serializer.StringRedisSerializer" /><beanid="jdkSerializationRedisSerializer"class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" /><!-- redisTemplate--><beanid="redisTemplate"class="org.springframework.data.redis.core.RedisTemplate"><propertyname="connectionFactory"ref="connectionFactory" /><propertyname="keySerializer"ref="stringRedisSerializer" /><propertyname="valueSerializer"ref="stringRedisSerializer" /><propertyname="hashKeySerializer"ref="stringRedisSerializer" /><propertyname="hashValueSerializer"ref="stringRedisSerializer" /><propertyname="stringSerializer"ref="stringRedisSerializer" /></bean><!-- redisMessageListenerContainer--><beanid="redisMessageListenerContainer"class="org.springframework.data.redis.listener.RedisMessageListenerContainer"><propertyname="connectionFactory"ref="connectionFactory" /><propertyname="topicSerializer"ref="stringRedisSerializer" /></bean><lock:configid="lockManager"group="physical-exam"redisTemplate="redisTemplate"messageContainer="redisMessageListenerContainer"/></beans>

API

@AutowiredprivateRedisLockManagermanager;publicvoidlock() {RedisLockredisLock =manager.getLock("asd");redisLock.lock();redisLock.unlock();}

配置参考

<redislock:config /> redislock 配置

属性类型必填缺省值描述
idStringSpring容器中的ID
groupString分组名,可以为不同业务分配分组
redisTemplateStringredisTemplate
messageContainerStringRedisMessageListenerContainer

About

基于Redis的分布式可重入锁

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp