목록전체 글 (51)
Jenkins를 t2.micro EC2 환경에서 실행시킬 경우 단순 컨테이너 실행만으로 350MB에 달하는 메모리 공간을 점유한다. 만약 이 상황에서 Jenkins를 통해 Build를 진행하게 된다면... 무려 610~650 사이의 메모리 공간을 점유하는 것을 확인할 수 있다. AWS 에서 제공하는 t2.micro 단위의 작은 EC2 가 사용자에게 기본적으로 제공하는 메모리 용량은 1GB 스토리지 용량은 30GB로 넉넉하게 제공하지만 1GB의 협소한 메모리 공간으로는 Jenkins로 Build 를 실행시키기에는 턱없이 부족하다. Jenkins 이외에도 메모리를 많이 차지하는 다른 프로그램들을 실행시킬 때에 자주 EC2 인스턴스가 죽는 모습에 당황하는 경우가 많고, 원인을 정확히 진단하지 못할 경우 애..

🎬Transaction? Transaction 이란? 여러 읽기 쓰기 단위를 논리적으로 하나로 묶은 것을 의미한다 트랜잭션이 시작되면 한 개 이상의 쿼리가 실행되고 결과를 커밋하여 DB에 반영하거나 롤백하여 반영을 취소한다 🎞Transaction의 범위 Transaction의 범위는 Connection을 기준으로 한다 위의 그림을 예시로 들었을 때, Connection_01에서 Rollback이 발생하더라도 Connection_02에서 수행된 Transaction은 이미 Commit이 되었기 때문에 Connection_02에서 발생한 Tx의 결과는 Rollback이 되지 않는다 🎇Transaction Propagation 위와 같은 문제를 해결하기 위해 나온 것이 바로 트랜잭션 전파다 여러 메소드 호출이..

이번글은 정보를 정리한 포스트가 아닌 에러를 해결하는 과정에서 새롭게 알게 된 사실을 정리한 글이다. 기존에 진행하던 프로젝트들은 하나같이 JWT를 사용하여 인증을 진행했다. JWT를 사용한 인증 방식을 선택한 것에 이유를 대자면 여러가지 이유를 댈 수 있겠지만, 가장 큰 이유로는 최근의 Spring Security 관련된 블로그 포스팅 혹은 강의를 살펴보면 대부분이 JWT 방식을 채택했기 때문일 것이다. 하지만, JWT 방식이 장점만을 가지고 있는 것은 아니기에 또 다른 인증 방식인 Session 방식 또한 시도해보기로 결정했다. 아주 예전부터 주식을 취미로 해오고 있던 나였기에 주식과 관련된 프로젝트를 진행해보고 싶었고, 마침 MSA 에 대해 간단하게 공부하며 RestTemplate 를 사용하는 방법..