1. AuthenticationFilter란?- Spring Security를 이용한 로그인 요청 발생 시 작업을 처리해 주는 Custom Filter 클래스 2. User-Service -> AuthenticationFilter.java@Slf4jpublic class AuthenticationFilter extends UsernamePasswordAuthenticationFilter { // final AuthenticationManager authenticationManager; private final UserService userService; private final Environment env; public AuthenticationFilter(Authenticat..
MSA
1. CustomFilter[gateWay-service] CustomFilter.java@Component@Slf4jpublic class CustomFilter extends AbstractGatewayFilterFactory { public CustomFilter() { super(Config.class); } @Override public GatewayFilter apply(Config config) { // Custom Pre Filter return (exchange, chain) -> { ServerHttpRequest request = exchange.getRequest(); ServerHtt..
1. Gateway란?서버 최앞단에 위치하여 모든 API 호출을 받는다. 받은 API 호출을 인증한 후, 적절한 서비스들에 메세지를 전달될 수 있도록 한다기능 : 인증 및 권한부여, 서비스 검색 통합, 응답 캐싱, 속도 제한, 부하 분산, 로깅, 추적, 상관관계, IP 허용 목록에 추가 등 2. 프로젝트 생성gateway-service [Lombok, Eureka Discovery Client, Gateway]first-service [Lombok, Spring Web, Eureka Discovery Client]second-service [Lombok, Spring Web, Eureka Discovery Client]3. 예제1. application.yml// First-Serviceserver: ..
Service Discovery가 뭐냐 !- MSA로 구성된 서비스는 각자 다른 IP와 Port를 가지고 있다.이러한 서로 다른 서비스들의 IP와 Port에 대해 저장하고 관리할 필요가 있는데 이것이 ServiceDiscovery이다. 1. Spring Boot Assistantapplication.yml 파일에서 자동완성을 해줄 수 있는 플러그인이다. 2. 인텔리제이 프로젝트 모듈화 3. 유레카로 실행1. discoveryservice 프로젝트디펜던시 : Eureka Server// DiscoveryserviceApplication.java@SpringBootApplication@EnableEurekaServer //추가 //application.ymlserver: port: 8761spring:..
MSA MircroService Architecture의 줄임말 마이크로서비스(microservice)는 애플리케이션을 느슨하게 결합된 서비스의 모임으로 구조화하는 *서비스 지향 아키텍처(SOA) 스타일의 일종인 소프트웨어 개발 기법이다. 서비스 지향 아키텍처(Service Oriented Architecture(SOA)) 애플리케이션 구성요소가 통신프로토콜을 통해 다른 구성요소에 서비스를 제공하는 아키텍처 접근 방식 대규모 컴퓨터 시스템을 구축할 때의 개념으로 업무상에 일 처리에 해당하는 소프트웨어 기능을 서비스로 판단하여 그 서비스를 네트워크상에 연동하여 시스템 전체를 구축해 나가는 방법론 여기서 '서비스'는 기능의 독립적 단위 MSA 등장배경 Monolithic Architecture는 소프트웨어의..