목록Spring (19)
잘 정리해보자
IoC (Inversion of Control - 제어의 역전) : 스프링에서는 프로그램의 흐름을 프레임워크가 주도하게 됨으로 제어의 역전이라고 한다. 제어권이 컨테이너가 관리하면서 객체의 생성 및 생명주기 관리를 한다. 이러한 제어로 의존성 주입(DI), 관점지향 프로그래밍(AOP) 등이 가능하게 된다. DI (Dependency Injection - 의존성 주입) : 의존성이란, 어떠한 작업1을 변경 하기 위해 다른 작업2 까지 변경해야 하는 경우 작업1이 작업2에 대해 의존성을 가지고 있다고 한다. 그리고 의존성 해결을 위해 객체의 인스턴스를 외부에서 받을 필요가 있다. (스프링은 setter메소드를 이용한 의존성 주입이다.) 의존성으로 인해 java코드를 직접적으로 변경해서 작업을 수행해야 하는 ..
Zuul (API Gateway) : web에서 백엔드 서비스 호출 시 거치는 gateway 역할의 어플리케이션. MSA의 동적 라우팅, 모니터링, 보안 등 담당 - 동적 라우팅 : 호출하는 시점에 따라 백엔드의 핸들러를 호출 - 모니터링 : 어떤 서비스 호출되는지 모니터링 - 인증과 보안 : MSA에서 인증 구현으로, 모든 서비스에 보안 구성 Eureka : Cloud 환경에서 서비스의 로드밸런싱, 실패처리 등 유연한 처리를 위해 각 서비스들의 정보(IP, Port, InstanceID) 을 포함한 REST 기반 미들웨어 서버 MSA 기반 아키텍처로, Client-Server 방식 -> Eureka client 가 server로 instance 정보들을 Eureka 서버로 등록 후, Eureka 의 정..
- maven/gradle 세팅 (빠른 시작을 위한 스타터 옵션들) 1. spring-boot-starter-web : 스프링 RESTful 서비스 개발 2. spring-boot-starter-test : junit, Hamcrest 등 스프링 테스트 3. spring-boot-starter-actuator : 어플리케이션 모니터링 및 관리 (민감한 정보 포함 - 운영의 경우 보안 필요) 4. spring-boot-starter-log4j2 : Log4j2 를 사용한 로깅 - Annotation 1. @SpringBootApplication : @EnableAutoConfiguration + @ComponentScan + @Configuation 를 합친 기능 스프링부트를 기동하는 main 메소드 역할..