본문 바로가기

업무 기록/ETC34

QueryDSL 란, 주요 메서드 및 장단점 기본 설명 QueryDSL 란QueryDSL은 정적 타입을 이용해 SQL과 같은 쿼리를 생성할 수 있도록 해주는 프레임워크입니다. 주로 JPA와 함께 사용되지만, MongoDB, SQL 등 다양한 저장소에도 사용할 수 있습니다.  QueryDSL을 사용하면 메서드들을 조합하여 복잡한 쿼리를 타입이 안전하고 가독성 높은 코드로 작성할 수 있습니다. 또한 동적 쿼리 생성이 용이하고 컴파일 시점에 오류를 잡을 수 있어 개발 생산성과 코드 안정성을 높일 수 있습니다. 다만, 러닝 커브가 있고 복잡한 쿼리의 경우 성능 최적화에 주의가 필요할 수 있습니다.  주요 메서드 1. selectFrom() 기능: 조회할 엔티티를 지정합니다. 사용 예:queryFactory.selectFrom(qCallback)   장점:간결한 문법.. 2024. 8. 13.
테스트 코드 작성 이유 및 방법 - SpringBoot, Kotlin 테스트 코드의 장점은 다양하다 그 중 내가 생각하는 가장 큰 이유는 여러명이 프로젝트를 작업하는 경우에 있다. 각자의 코드를 변경한 경우 연관된 코드로 문제가 발생할 수 있다. 문제를 방지하기 위해 코드 변경 시마다 테스트를 일일히 하기에는 문제가 있어 테스트 코드를 작성하여 변경 시마다 자동으로 테스트가 실행되도록 설정하고 안정성과 효율성을 크게 향상시킬 수 있는 측면이다.   @Mock:Mockito를 사용하여 가짜 객체(mock)를 생성합니다. 여기서는 rcsBrandRepository의 가짜 객체를 생성하여 실제 데이터베이스 연결 없이 테스트할 수 있게 합니다.  @InjectMocks: 가짜 객체를 자동으로 주입합니다. 여기서는 rcsBrandServiceImpl에 mock 객체들을 주입합니다... 2024. 8. 9.
L4 로드벨런싱과 암호화 및 VIP 기존 회사의 웹서버 로드벨런싱의 경우 L4에서 VIP 를 통해 여러 서버로 로드벨런싱을 해주고 해당 Nginx에서  동일 서버인 Node로 전달 후  Node 에서 WAS 간에 로드벨런싱이  존재하였다.  Nginx 에서 Node 간 프론트 딴에도 로드벨런싱을 통한 고가용성과 부하분산을 위해 작업을 하였고 해당 내용을 정리하였다  먼저 보이는 부분이 기존 구조이다.  이렇게 변경할 계획이다.   간단 로드벨런싱과 VIP에 대해서 설명 L4 로드벨런싱 네트워크 트래픽을 TCP/UDP 레벨에서 분산시키는 방식이다.  특징 프로토콜 레벨 분산 - IP 주소와 포트 번호를 기준으로 트래픽을 분산 속도 - 패킷 검사하고 분산 과정이 단순하며 헤더 정보만 검사하기 때문에 L7 보다 오버헤드 감소 투명성 - 실제 서.. 2024. 6. 11.
[Oracle] PL/SQL정의, 기능, 대량 데이터 추가 기본 적으로 개발이나 테스트를 하는 경우 부하문제를 신경써야 한다. 고로 더미 데이터를 DB에 넣어서 테스트 하는 경우가 많으며 DB에 더미 값을 넣는 방법도 다양하다. 최근 PL/SQL 방식을 처음 사용해보아서 정리 목적으로 작성하였다.  정의PL/SQL(Procedural Language/Structured Query Language)은 Oracle 데이터베이스에서 사용되는 프로시저형 언어입니다. 이 언어는 SQL 문을 확장하여 프로그래밍 요소를 추가한 것으로, 데이터베이스 관련 작업을 수행하는 데 사용됩니다. PL/SQL은 데이터베이스 객체를 생성하고 관리하는 데 사용되는 프로그램 유형으로, 주로 저장 프로시저, 함수, 트리거 등을 작성할 때 사된다.   기능PL/SQL은 다음과 같은 주요 기능을 .. 2024. 5. 22.