반응형
EC2 메모리 부족 빌드 실패 해결 (Gradle build daemon disappered unexpectedly)
트러블 슈팅2024. 8. 7. 22:45EC2 메모리 부족 빌드 실패 해결 (Gradle build daemon disappered unexpectedly)

어느날 Jenkins로 개발 서버에 어플리케이션을 배포하는데, 다음과 같은 에러 문구가 뜨면서 빌드에 실패하였습니다. Gradle build daemon disappered unexpectedly 라는 문구로 구글링을 해본 결과 EC2 메모리가 부족해서 빌드가 실패한 것이라는 이야기가 많아서 개발 서버 EC2 메모리 용량을 free -h 명령어로 확인을 해보니 사용 가능한 메모리가 300MB로 굉장히 작았습니다. 어차피 개발 서버이니 스왑 메모리를 설정을 할까.. 아니면 EC2 메모리 스펙을 늘릴까.. 고민을 하던 와중,왜 갑자기 메모리가 부족하게 되었을까? 라는 근본적인 문제의 원인이 궁금해졌습니다. 먼저 어떤 프로세스가 메모리를 잡아먹고 있는지 알기 위하여, ps -e 명령어를 통하여 모든 프로세스를..

(Spring) MySQL 격리수준에 따른 문제 해결
트러블 슈팅2024. 3. 28. 19:15(Spring) MySQL 격리수준에 따른 문제 해결

회사에서 PG사를 통해 현금을 결제하여 포인트를 구매할 수 있는 서비스의 전반적인 백엔드 부분을 담당하여 개발을 진행하였습니다.입사 이후 진행하는 첫 신규 서비스 개발 프로젝트이기도 하고, 소중한 고객의 돈과 관련된 기능인 만큼 장애가 발생한다면 굉장히 크리티컬한 서비스 개발이였기에 설계부터 개발, 테스트까지 나름대로 신경써서 개발을 진행하였습니다. 기존 포인트 DB의 정합성이 틀어진 문제가 있어서, 데이터 정합성이 보장되도록 하기 위한 로직 개발과 DB설계부터 PG 연동 플로우 설계, 기존 API 마이그레이션, 기존 데이터 이관 업무 전부 혼자 담당하려다보니 벅차기도 하였지만 우여곡절 끝에 개발을 완료하였고 개발서버, Stage 서버 QA까지 마무리 한 뒤 대망의 결제 시스템을 오픈하였습니다. 라이브 ..

@RequestParam MultiValueMap의 내부 List 타입 불일치 문제 해결
트러블 슈팅2023. 11. 11. 15:38@RequestParam MultiValueMap의 내부 List 타입 불일치 문제 해결

@RequestParam MultiValueMap의 내부 List 타입 불일치 문제 해결 사이드 프로젝트의 주문 서비스의 주문요청 처리 기능을 개발하며 발생한 이슈 해결과정입니다. 주문 서비스의 주문요청 처리 프로세스는 다른 서비스에서 여러가지 정보들을 조회하여 검증하는 작업을 거치게 됩니다. 여태까지 해왔던 모놀리틱한 구조의 프로젝트에서는 주문 서비스에서 회원의 정보 조회도 가능하였으나, 각각의 서비스가 철저히 분리된 마이크로 서비스 아키텍처를 적용하였기에 서비스간 통신을 하기 위해서는 해당 서비스에 API 호출을 하는 방식을 이용해야 했습니다. Spring 프로젝트에서 API 호출을 하는 방법으로는 RestTemplate와 OpenFeign를 사용하는 방법이 있는데 저는 비교적 쉽게 사용할 수 있는 ..

반응형
image
loading