DDongdaindongda.hashnode.dev·Jul 6, 2025 · 3 min readJpa 영속성 컨텍스트 및 이점영속성 컨텍스트란? 영속성 컨텍스트란 엔티티를 영구 저장하는 환경으로 JPA가 엔티티를 메모리에서 관리하는 공간이다. 엔티티 매니저 팩토리를 통해서 고객의 요청이 올때마다 엔티티 매니저를 생성하고, 이때 엔티티 매니저와 1:1로 영속성 컨텍스트가 생긴다. EntityManaver.persist(entity); 위의 코드에서 entity는 persist 됨과 동시에 영속성 컨텍스트에서 관리하게된다. 영속성 컨텍스트에서 관리한다는것은 DB 에 저...00
DDongdaindongda.hashnode.dev·Jun 11, 2025 · 3 min readCI/CD 적용 이후 고민과 Health Check 도입EEOS 로그인이 안되는데요? CI/CD 적용 후 슬랙에는 배포 성공 알림이 올라왔고, 당연히 배포가 완료 된줄 알았다. 서버에 접속해보니 테이블 변경 오류로 애플리케이션 실행이 제대로 되지 않은 상태였다. 문제 상황 기존 CI/CD workflow 는 배포 성공 및 실패에 따라 슬랙 메세지가 전송되는 로직으로 작성 되어있지만, 여기서 “성공“은 CD 코드가 끝까지 실행되었을때이다. 만약 CD 코드가 모두 실행되고 슬랙 메세지까지 전송되면 ac...00
DDongdaindongda.hashnode.dev·Jun 1, 2025 · 1 min readRedis 캐싱전략 - Cache Aside, Write Around캐시(Cache), 캐싱(Caching)이란? 캐시란, 원본 저장소보다 빠르게 가져올 수 있는 임시 데이터 저장소 캐싱이란? 캐싱이란, 캐시(임시저장소)에 접근해서 데이터를 빠르게 가져오는 방식을 의미한다. 예시) “이 API는 응답 속도가 너무 느린데? 이 응답 데이터는 캐싱(Cahing) 해두고 쓰는 게 어때?’ 데이터를 캐싱할때 사용하는 전략(Cache Aside, Write Around) 레디스를 캐스로 쓸때 어떤 방식으로 사용할지 ...00
DDongdaindongda.hashnode.dev·May 27, 2025 · 2 min readtry catch finally VS try with resources예외를 처리할때, 사용한 외부자원은 반드시 반납해야한다. 예외 처리는 try catch finally 와 try with resources 두가지 구문으로 처리할 수 있는데 이 둘의 가장 큰 차이는 자원을 반납하는 방식에 있다. try catch finally 예외 처리 시 외부자원은 사용후 반드시 반납되어야 한다. 자바는 이것을 위해 어떤 경우라도 반드시 호출되는 finally 기능을 제공한다. try - catch - finally 구조는...00
DDongdaindongda.hashnode.dev·Feb 19, 2025 · 2 min read선착순 출석체크, firefinger 개발 중 고민복불복에 대해 회의한 뒤 생긴 고민 → 조회할때마다 동시 출석자의 순서가 바뀔 수도 있지 않을까? 생각의 오류 API 를 여러번 조회해보았을때, 동시 출석자의 순서는 바뀌지 않았다. 나는 이것이 mysql 내부에서 데이터를 정렬하는 로직에 있어서 “어떠한 규칙”을 통해 조회되기 때문이라 생각했다. 하지만..! 나의 생각은 일부는 맞고 일부는 틀렸다. 왜냐하면 mysql 은 데이터를 조회할때, 인덱스 정렬 또는 파일정렬을 사용하는데 추가로 ...00B