inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Cách giải quyết các vấn đề đồng thời bằng hệ thống kiểm kê

Facade 클래스에대 설명이 부족해요 ㅠㅠ

Đã giải quyết

774

guk15020122889

16 câu hỏi đã được viết

0

안녕하세요

섹션 3. Database 이용해보기 - Optimistic Lock 활용해보기 강좌에 질문이 있습니다.

Facade 클래스에서 버전이 달라 업데이트 실패한 경우에 재시도를 한다는건 이해했습니다.

그런데 왜 재시도를 퍼사드 클래스를 따로 만들어서 수행하는지 궁금합니다

java spring 동시성

Câu trả lời 3

2

169developer9973

김관욱님 안녕하세요.

말씀해주신대로 굳이 Facade Class 를 만들지 않아도 동작가능하게 만들 순 있습니다.

다만, 그렇게된다면 OptimisticLockStockService 에서 너무 많은 책임을 가지게됩니다.

  1. 재고 감소 책임

  2. 재시도 책임

저는 한 메소드(혹은 클래스) 에서 한가지 책임만 가지고 있는것을 좋아합니다.

그렇기에 재시도를 해야하는 책임을 Facade 로 옮김으로써 OptimisticLockStockService 에서는 재고 감소에 대한 책임만을 가지게 한 것입니다.

이에대한 내용은 객체지향 혹은 디자인패턴을 공부해보시면 좋을 것 같습니다!

감사합니다.

0

souljazz134865

Facade 가 어떤 의미인지 궁금했는데 디자인 패턴을 사용하신거였군요! 좋은 질문과 좋은 답변 감사합니다!

0

devlinky20227142

답변 감사합니다! 저도 궁금했는데, 덕분에 알게 되었네요!

여기서, 더 궁금한 점은 다른 디자인 패턴도 있는데, 왜 퍼사트 패턴을 사용하셨는지 궁금합니다.

1

169developer9973

혹시 어떤디자인패턴을 생각하시고 말씀 하시는건지 알 수 있을까요 ?

어떤 디자인패턴과 비교를 하는지 알 수 있다면 이유를 더 명확하게 말씀드릴 수 있을 것 같습니다 :)

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

0

46

2

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

0

126

2

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

0

97

2

단일연산

0

70

2

낙관적락vs. 레디스락

0

108

2

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

0

67

2

@Lock(OPTIMISTIC)이 필요한 이유

0

90

2

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

0

132

2

DataSource Hikari 사용 이유

0

149

2

saveAndFlush 사용 이유 문의

0

113

3

비관적 락 VS 네임드 락

0

161

3

application.yaml 에 redis 정보

0

101

2

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

0

185

2

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

0

220

2

@modifying 이용한 동시성 제어

0

168

2

DB락과 분산락

0

262

2

NamedLock 테스트 실패

0

186

2

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

0

174

2

optimistic Lock 재시도 질문입니다.

0

233

2

낙관적 락 테스트 실패

0

242

2

오류?

0

1631

4

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

1

268

2

Pessimistic Lock 전체 테스트 오류 문의

0

362

3

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

0

462

2