inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

재고시스템으로 알아보는 동시성이슈 해결방법

Redisson lock() vs tryLock()

177

donkey

작성한 질문수 28

0

반드시 실행 되어야할 서비스 로직에

lock(3,TimeUnit.SECONDS) 이럭식으로 사용하려고 하는데

tryLock() 대신 써도 될지 궁금합니다.

코드 찾아보면, 다들 tryLock() 쓰시던데,

시스템적으로 저렇게 계속 lock획득 대기 상태로 만들어 놓으면, 안되는건지 궁금합니다.

 

java spring 동시성

답변 2

0

최상용

donkey 님 안녕하세요!
말씀하신 lock(3,TimeUnit.SECONDS) 이 어떤건지 좀만 자세하게 말씀해주실 수 있으실까요?

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

질문하신 내용과는 다소 벗어난 정보이지만, Spring과 관련된 Redis 데이터 처리에 대한 정보를 참고하실 수 있도록 제공해드리겠습니다. Redis를 사용하여 데이터 처리를 할 때, Spring에서는 RedisTemplate이나 StringRedisTemplate를 통해 Redis 연동 기능을 손쉽게 사용할 수 있습니다. 예를 들어, Redis와의 연결 구성을 위해서는 다음과 같은 방법으로 속성을 설정할 수 있습니다:

spring.data.redis.host=localhost
spring.data.redis.port=6379
spring.data.redis.database=0
spring.data.redis.username=user
spring.data.redis.password=secret

또는 YAML 형식으로도 설정할 수 있습니다:

spring:
  data:
    redis:
      host: "localhost"
      port: 6379
      database: 0
      username: "user"
      password: "secret"

이러한 설정을 통해 Spring 애플리케이션에서 Redis 서버에 연결하고 데이터 처리 작업을 수행할 수 있습니다.

서버의 과부하나 다운과 같은 시스템적 이슈는 여러 요소에 의해 발생할 수 있으며, lock을 오랜 시간 동안 사용하거나 대기 상태를 지속하는 것이 서버에 부담을 줄 수 있습니다. lock을 사용할 때는 필요한 최소 시간 동안만 lock을 유지하고, 가능하면 tryLock을 사용하여 lock을 얻을 수 없는 경우 즉시 대응할 수 있도록 하는 것이 좋습니다.

더 자세한 Spring과 Redis의 사용법에 대해서는 다음 URL을 참고해 주시기 바랍니다: Spring Boot Reference Documentation

질문하신 lock과 관련된 깊은 내용에 대해서는 이 정보가 직접적인 답변이 되지 못할 수 있음을 양해부탁드립니다. Redisson의 lock과 tryLock 기능의 차이점, 그리고 시스템적 측면에서의 영향에 대해선 해당 기술의 공식 문서나 커뮤니티에서 더 심도 있는 정보를 얻으실 수 있습니다.

레디선 테스트코드에서 채널이름은 없어도 되는건가요?

0

40

2

낙관적 락을 사용할 떄 차이점

0

118

2

동시성 검증 코드에 관한 문의

0

91

2

단일연산

0

69

2

낙관적락vs. 레디스락

0

106

2

안녕하세요. 레디슨 질문있습니다..!!

0

66

2

@Lock(OPTIMISTIC)이 필요한 이유

0

89

2

get_lock 의 timeout이 3000초 이던데 너무 긴거 아닌가요?

0

128

2

DataSource Hikari 사용 이유

0

145

2

saveAndFlush 사용 이유 문의

0

111

3

비관적 락 VS 네임드 락

0

158

3

application.yaml 에 redis 정보

0

99

2

왜 클래스 이름에 Facade 가 붙나요?

0

181

2

@Transactional 으로 인한 동시성 문제 발생 원인이 궁금합니다.

0

218

2

@modifying 이용한 동시성 제어

0

168

2

DB락과 분산락

0

260

2

NamedLock 테스트 실패

0

186

2

테스트에서 트랜잭션 어노테이션 질문 있습니다.

0

171

2

optimistic Lock 재시도 질문입니다.

0

229

2

낙관적 락 테스트 실패

0

239

2

오류?

0

1624

4

LettureLockStockFacadeTest에서 오류가 발생합니다.

1

267

2

Pessimistic Lock 전체 테스트 오류 문의

0

357

3

비관적 락 vs 레디스(Lettuce)락 비교 관련 질문

0

458

2