분산 잠금 (A) --- springboot 통합 redisson을 레디 스

  분산 잠금 최근의 합을 레디 스 프로젝트에서 사용하는 많은 수의 몇 년 전에이 springboot 통합 redisson 시작을 시작합니다.

  Redisson 자바 인 메모리 데이터 그리드 (인 - 메모리 데이터 그리드)의 레디 스를 기초로 구현됩니다. 그것은 일반적으로 사용되는 자바 분산 객체의 시리즈는 분산 된 서비스를 제공합니다 제공뿐만 아닙니다. 포함 ( BitSetSetMultimapSortedSetMapListQueueBlockingQueueDequeBlockingDequeSemaphoreLockAtomicLongCountDownLatchPublish / SubscribeBloom filterRemote serviceSpring cacheExecutor serviceLive Object serviceScheduler service) Redisson는 레디 스의 가장 간단하고 편리한 방법을 제공합니다. 

첫째, Maven을 추가 할 의존

pom.xml 파일을 다음과 같이 추가

<의존성> 
<의 groupId> org.redisson </의 groupId>
<artifactId를> redisson 스프링 부팅 스타트 </ artifactId를>
<version>은 3.11.5 </ 버전>
</ 의존성>

둘째, 구성 파일 YML을 수정

구성하려면 RedissonAutoConfiguration 아래 스타터 팩을 볼 수있는 방법에 관해서는, RedissonProperties 클래스는 매개 변수를 설정할 필요가 무엇을 배울 것입니다.

당신이 매개 변수를 설정하는 데 필요한 이해 한 후, springboot 구성 파일에 다음 설정을 추가 :

봄 : 
  레디 스 : 
    redisson : 
      설정을 "클래스 경로 : redisson.yml"

그런 다음, 자원 디렉토리 새로운 redisson.yml 파일에 다음과 같은 구성을 추가

clusterServersConfig : 
  idleConnectionTimeout : 10000 
  대해 connecttimeout : 10000 
  시간 제한 : 3000 
  retryAttempts : 3 
  RetryInterval을 : 1500 
  failedSlaveReconnectionInterval : 3000 
  failedSlaveCheckInterval : 60000 
  암호 : 널 
  subscriptionsPerConnection : 5 
  CLIENTNAME : 널 
  로드 밸런서! < org.redisson.connection.balancer.RoundRobinLoadBalancer > {} 
  subscriptionConnectionMinimumIdleSize 1 
  subscriptionConnectionPoolSize 50 
  slaveConnectionMinimumIdleSize 24 
  slaveConnectionPoolSize 64 
  masterConnectionMinimumIdleSize 24  
  masterConnectionPoolSize 64
  readMode "SLAVE" 
  subscriptionMode : "SLAVE" 
  nodeAddresses : 
  - "레디 스 : //192.168.35.142 : 7002" 
  - "레디 스 : //192.168.35.142 : 7001" 
  - "레디 스 : //192.168.35.142 : 7000" 
  에서 ScanInterval : 1,000 
  pingConnectionInterval : 0 
  KEEPALIVE : FALSE 
  tcpnodelay yes를 : FALSE 
스레드 16 
nettyThreads 32 
코덱! < org.redisson.codec.FstCodec > {} 
transportMode : "NIO"

다음과 같이 또한, 모든 직접 구성 springboot 구성 파일을 (권장하지 않음) 쓸 수있다 :

봄 : 
  레디 스 : 
    redisson : 
      설정 : 
        clusterServersConfig : 
          idleConnectionTimeout : 10000 
          대해 connecttimeout : 10000 
          시간 제한 : 3000 
          retryAttempts : 3 
          RetryInterval을 : 1500 
          failedSlaveReconnectionInterval : 3000 
          failedSlaveCheckInterval : 60000 
          암호 : 널 
          subscriptionsPerConnection : 5 
          CLIENTNAME : 널 
          로드 밸런서! < org.redisson.connection. balancer.RoundRobinLoadBalancer > {} 
          subscriptionConnectionMinimumIdleSize : 1! 
          slaveConnectionMinimumIdleSize : 24 
          slaveConnectionPoolSize : 64 
          masterConnectionMinimumIdleSize : 24 
          masterConnectionPoolSize : 64 
          readMode : "SLAVE" 
          subscriptionMode : "SLAVE" 
          nodeAddresses : 
          - "레디 스 : //192.168.35.142 : 7002" 
          - "레디 스 : //192.168.35.142 : 7001" 
          - " 레디 스 : //192.168.35.142 : 7000 " 
          에서 ScanInterval : 1000 
          pingConnectionInterval : 0 
          킵 얼라이브 : 거짓 
          tcpnodelay yes를 : 거짓 
        스레드 : 16 
        nettyThreads : 32 
        코덱 :! < org.redisson.codec.{} 
        transportMode : "NIO"

셋째, 실행 시작

제공되는 다음 로그 경우, 프로젝트를 시작, 그리고 후에는 통합의 성공을 나타냅니다

 

 성공적으로 통합 한 후,에 의해 RedisTemplate 에 의한 데이터 및 기타 작업, 가능한 추가 및 삭제 RedissonClient 다양한 잠금을 획득, 하나 제공하는 다양한 분산 잠금 RedissonClient을 사용하는 방법에 대해 설명합니다.

 

 

 

추천

출처www.cnblogs.com/RingWu/p/11871413.html