728x90 반응형 전체 글129 JPA 사용 방식 JPA 사용 방식 ├─ 1. Spring Data JPA │ ├─ 1-1. 메서드 이름 기반 자동 쿼리(save, findBy~)│ ├─ 1-2. @Query (JPQL) │ └─ 1-3. @Query (Native Query) ├─ 2. EntityManager (직접 제어) │ ├─ 2-1. JPQL │ └─ 2-2. Native Query└─ 3. QueryDSL (동적, 타입 안정) 2025. 6. 30. batch insert하기 Spring Data JPA saveAll() vs 네이티브 쿼리 두 방식의 가장 큰 차이는 영속성 컨텍스트 사용 유무(메모리)와 동작 방식. Spring Data JPA에서 saveAll(Iterable)은 내부적으로 하나하나 save()를 호출하는 구조.for문 돌면서 persist(insert) 또는 merge(update)를 반복. ??? : saveAll 안쓰고 네이티브 쿼리 써도 @Transactional 을 쓰기 때문에 jdbc 버퍼에 저장되니까 메모리 쓰는건 똑같지않아? List list = createMillionEntities(); // 100만 개 생성myRepository.saveAll(list); saveAll()은 단순히 SQL만 실행하는 게 아니라 다음을 함1. 엔티티 객체 생성2. 모두 영속성 컨텍스트에 등록3. 변경 여부 추적(더티 .. 2025. 4. 4. JPA 영속성 컨텍스트, Dirty Checking, 쓰기 지연, Spring Data JPA, Hibernate, JDBC JPA의 영속성 컨텍스트(Persistence Context) - JPA가 관리하는 엔티티 객체들이 저장되는 메모리 공간(캐시) - JPA에서 엔티티를 persist(), find(), merge() 등을 하면 영속성 컨텍스트가 이를 관리 - 즉시 DB에 반영되지 않고 영속성 컨텍스트에 저장되었다가 트랜잭션이 commit()될 때 변경 사항을 한 번에 DB에 반영 (flush() 발생) : 쓰기 지연 (Write-Behind) - @Entity 가 붙은 클래스만 관리함!! - @Query 나 네이티브쿼리로 가져온 임의의 결과는 관리하지 않음 엔티티 생명주기 (4가지 상태)상태설명코드 예제비영속 (New) JPA가 관리하지 않는 상태Member member = new Member();영속 (Manag.. 2025. 4. 3. aws Public ALB 생성하기 (https) https 를 받는 서비스이므로 ALB 를 선택하겠습니다.Application Load Balancer (ALB) - L7 (애플리케이션 계층) 로드 밸런서 - HTTP, HTTPS 트래픽을 처리하며, URL 기반 라우팅 가능 - WebSocket 및 HTTP/2 지원 - SSL/TLS 종료 가능 - ALB에서 HTTPS를 처리하고 백엔드(ECS/EC2 등)로 HTTP를 전달 가능 Network Load Balancer (NLB) - L4 (전송 계층) 로드 밸런서 - TCP, UDP, TLS 트래픽을 처리 - 고성능 및 저지연 처리 가능 - ALB보다 처리 속도가 빠름 - 정적 IP 제공 - NLB는 하나의 고정된 퍼블릭 IP를 가짐 (ALB는 동적으로 변경됨) - .. 2025. 3. 19. aws blue green 배포를 위한 ALB target group 만들기 타겟 그룹 (Target Group) 은 Load Balancer 가 트래픽을 분배할 대상(EC2 인스턴스, ECS 컨테이너, Lambda 함수, 온프레미스 서버 등)을 정의하는 그룹입니다. 하나의 로드 밸런서는 여러 개의 타겟 그룹을 가질 수 있습니다. 타겟 그룹에는 헬스 체크(Health Check) 기능이 있어서, 정상적인 타겟에만 트래픽을 보냅니다. ec2의 load balancing 에 있는 target groups 를 클릭합니다. Specify group details저는 IP addresses 를 선택할 것입니다. 'ec2에 배포할거니까 Instances 로 해야하는거 아닌가요?' 라고 할 수 있습니다. 하지만 저는 ECS(Elastic Container Service) 를 쓸 것입니다.. 2025. 3. 17. 이전 1 2 3 4 ··· 26 다음 728x90 반응형