본문 바로가기

분류 전체보기149

230413 TIL 1. Lock 옵션에 따른 실험 결과 1)Lock 옵션 종류와 설명 ㄱ. Optimistic NONE : 별도의 옵션을 사용하지 않아도 Entity에 @Version이 적용된 필드만 있으면 낙관적 잠금이 적용됩니다. OPTIMISTIC(read) : Entity 수정시에만 발생하는 낙관적 잠금이 읽기 시에도 발생하도록 설정합니다. 읽기시에도 버전을 체크하고 트랜잭션이 종료될 때까지 다른 트랜잭션에서 변경하지 않음을 보장합니다. 이를 통해 diry read와 non-repeatable read를 방지 OPTIMISTIC_FORCE_INCREMENT(write) : 낙관적 잠금을 사용하면서 버전 정보를 강제로 증가시키는 옵션 ㄴ. Pessimistic PESSIMISTIC_READ : dirty read가 .. 2023. 4. 14.
20230410 Jmeter 실험일지 1. 실험 개요 1) 1000만건의 책데이터가 있고 각각의 책 데이터는 아래와 같은 칼럼과 내용을 가지고 있다. id(PK), 재고량, 출발년, 출판월, 가격, 출판사, 별점, 제목, 작가, 소분류,대분류, 이미지 2) 책의 재고량은 기본 20으로 설정되어 있고, 순간적으로 주문을 폭주시켜도 주문들이 정상 작동하는지 파악해보자. 3) 과정은 http request의 세션을 이용하여 어떤 유저가 주문을 했고, url을 통해 어떤책을 몇권 주문했는지 파악하고 재고량보다 같거나 적게 주문한 경우에만 주문이 정상작동하도록 설계했다. 4)book table 예시 5)Jumoon table 예시 2. 다양한 Lock의 종류와 Spring에서 해당 Lock들을 구현하는 방법 비관적 락 : 트랜잭션이 시작될 때 Sha.. 2023. 4. 11.
230408 TIL 1. 오늘의 오류 1) 트랜잭션 안에 스프링 배치를 넣을 수 없다. 자세한 내용은 아래 링크를 참조하자 https://brunch.co.kr/@anonymdevoo/50 Spring batch와 @Transactional [BATCH-1668] added check for transaction | 본 글의 설명과 코드는 spring-batch의 4.3.x 버전을 기준으로 한다. 출처: spring-batch/4.3.x spring-batch(이하 스프링 배치)의 Job을 트랜잭션 안에서 실행하게 되면 아래와 brunch.co.kr 2023. 4. 8.
JMeter 설치와 사용 1. JMeter 설치 1) 사이트에 접속하여 사이드 왼쪽의 Download Releases 버튼을 클릭한 후 Binaries에서 다운로드 윈도우는 zip 파일을 다운로드 https://jmeter.apache.org/ Apache JMeter - Apache JMeter™ Apache JMeter™ The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expande.. 2023. 4. 8.