practice pubsub model with java
Thread Safe 상황을 유지하기 위해서 락을 이용합니다.
불행하게도, 락을 이용하면서 많은 문제가 생깁니다.
본 Repository는 여러가지의 락을 구현하면서, 일어날 수 있는 문제를 다룹니다.
그리고 문제들을 해결하는 방향으로 나아가면서 코드의 Version을 수정하는 과정을 포함합니다.
1가지의 상황을 설정하여, 여러가지 방법으로 구현을 할 예정입니다.
상황을 먼저 이해하고 여러가지 방법으로 구현된 내용을 살펴봅니다.
-
서버가 존재합니다.
- 서버에는
게시글 조회
라는 서비스를 제공합니다. - 많은 유저가
게시글 조회
를 요청합니다. - 서버는 유저에게 게시글을 응답합니다.
- 서버에는
-
게시글에는
조회수
가 존재합니다.조회수
는 유저가 요청할 때마다 1씩 증가합니다.- 같은 유저가 2번요청을 하여도
조회수
는 증가합니다. - 조회수는 유저의 모든 요청을 올바르게 증가시켜야 합니다.