본문 바로가기
반응형
SMALL

SpringBoot38

마이크로서비스 아키텍처(MSA) 입문 마이크로서비스 아키텍처란?정의MSA는 애플리케이션을 작고 자율적인 서비스들로 나누고,이들 서비스를 독립적으로 배포, 운영, 확장할 수 있게 만드는 아키텍처 스타일입니다.MSA vs 모놀리식 비교 항목 모놀리식(Monolith) 마이크로서비스(MSA) 구조하나의 큰 애플리케이션작고 독립적인 서비스들의 조합배포전체 재배포서비스 단위 배포 가능개발협업 어려움 (코드 충돌↑)팀별 서비스 담당 가능장애 영향전체 다운 가능성 ↑서비스 격리로 영향 ↓확장성수직 확장수평 확장 가능예시 시스템 구성예: 쇼핑몰 시스템을 MSA로 설계 시 마이크로서비스 역할 회원 서비스회원 가입, 로그인상품 서비스상품 등록, 조회주문 서비스주문 생성, 결제 처리배송 서비스배송 상태 관리알림 서비스이메일, 문자 발송API Gateway프론트.. 2025. 4. 16.
멀티모듈 프로젝트 구성 멀티모듈 프로젝트란?하나의 루트 프로젝트(Parent) 아래에 여러 개의 서브 모듈을 구성하여 각 모듈이 독립된 책임을 갖도록 분리하는 구조입니다.프로젝트 구조 예시my-project/├── build.gradle ← 루트 빌드 설정├── settings.gradle ← 모듈 등록├── common/ ← 공통 유틸/Config 모듈│ └── build.gradle├── domain-member/ ← 회원 도메인│ └── build.gradle├── domain-order/ ← 주문 도메인│ └── build.gradle├── api/ ← 외부 API를 받는 모듈 (.. 2025. 4. 16.
WebSocket & 실시간 알림 WebSocket 기본 개념 구분 설명 HTTP요청-응답 기반, 클라이언트가 먼저 요청WebSocket클라이언트-서버 간 양방향 지속 연결 유지STOMPWebSocket 위에서 사용하는 메시지 전송 프로토콜SockJSWebSocket 미지원 브라우저 호환성 처리용 JS 라이브러리1. 의존성 추가 (Spring Boot)설명2. WebSocket 설정 클래스@Configuration@EnableWebSocketMessageBrokerpublic class WebSocketConfig implements WebSocketMessageBrokerConfigurer { @Override public void registerStompEndpoints(StompEndpointRegistry registr.. 2025. 4. 16.
캐시(Cache) 캐시란?동일한 요청에 대해, 기존에 계산한 결과를 재사용해 응답 속도를 향상시키는 기술 캐시 위치설명 메모리(Local)서버 내 메모리에 저장, 간단하고 빠름Redis 등 외부 캐시분산 캐시, 다수 서버에서 공유 가능1. Spring Boot 캐시 기본 설정의존성 추가 (Spring Boot Starter Cache)implementation 'org.springframework.boot:spring-boot-starter-cache'@EnableCaching 설정 추가@SpringBootApplication@EnableCachingpublic class MyApplication { public static void main(String[] args) { SpringApplicatio.. 2025. 4. 16.
QueryDSL QueryDSL 핵심 개념 항목 설명 DSL 방식쿼리를 자바 코드처럼 작성 가능 (where().and())타입 안전컴파일 타임에 필드, 테이블 오류 감지 가능코드 자동 생성Q타입이라는 쿼리 객체 클래스 자동 생성됨JPQL 대체문자열 없이 객체 기반으로 조건/정렬 작성 가능1. 의존성 추가 (Gradle)plugins { id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"}dependencies { implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor 'com.querydsl:querydsl-apt:5.0.0:jakarta' annotationProce.. 2025. 4. 16.
로그 관리(Logback, Log4j2) 1. 로그 프레임워크 개요 프레임워크 설명 LogbackSpring Boot의 기본 로깅 시스템 (SLF4J 연동)Log4j2고성능 로그 시스템, 필요 시 직접 설정 필요SLF4J표준 로깅 추상화 (Logback, Log4j2 둘 다 사용 가능)2. 기본 로그 구조 (Logback)application.propertieslogging.level.root=INFOlogging.level.com.example=DEBUGlogging.file.name=app.loglogging.pattern.console=%d{HH:mm:ss} %-5level %logger{36} - %msg%n위 설정만으로도 app.log 파일 생성, 콘솔 출력 포맷 변경 가능3. Logback 커스텀 설정 (logback-spring.x.. 2025. 4. 16.
LIST