전체 글161 [Spring WebFlux] Spring WebFlux Spring WebFlux Spring WebFlux 개념 Spring 5 부터 추가된 기술 스택은 Reactive 스택 WebFlux는 Reactor의 Flux가 Web에 사용된 기술 Reactive Streams를 구현한 구현체라면 Reactor가 아니어도 사용 가능 Spring WebFlux 애플리케이션 VS Spring MVC 애플리케이션 기술 스택 비교 WebFlux(Reactive Stack) Non-Blocking 통신 지원 Reactive Adapter를 사용해 RxJava 등 다른 리액티브 라이브러리 사용 가능 Spring Security를 사용한 보안, WebFilter를 사용해 리액티브 특성에 맞는 인증, 권한 적용 웹 계층에 Spring WebFlux 사용 리액티브 스택을 데이터 액.. 2022. 12. 9. [Spring WebFlux] Reactor Project Reactor 개념 Reactor Reactive Streams 표준 사양을 구현한 구현체 Spring 5 버전부터 지원하는 리액티브 스택에 포함되어 리액티브한 애플리케이션 동작에 있어 핵심 역할 담당하는 라이브러리 Reactor 특징 Reactor는 Reactive Streams를 구현한 리액티브 라이브러리이다. 핵심 특징으로 Non-Blocking 통신을 지원한다. 요청 스레드가 차단이 되지 않는다. Publisher 타입으로 Mono[0|1]와 Flux[N]이라는 두 가지 타입 존재 Mono[0|1]에서 0과 1은 0건 또는 1건의 데이터를 emit 가능함을 말한다. Flux[N]에서는 여러 건 데이터를 emit 가능 서비스들 간 통신이 잦은 MSA(MicroService Archit.. 2022. 12. 9. [Spring WebFlux] 리액티브 프로그래밍 리엑티브 프로그래밍 개념 Reactive System 클라이언트 요청에 반응을 잘하는 시스템을 의미 클라이언트에게 응답 대기 시간을 최소화하도록 요청 스레드가 차단되지 않게(Non-Blocking) 하여 즉각 반응하도록 구성된 시스템 Reactive System 설계 원칙 MEANS 커뮤니케이션 수단을 의미 Message Driven : 메시지 기반 통신을 통해 여러 시스템 간 느슨한 결합 유지 FORM 메시지 기반 통신을 통해 어떤 특성을 가지는 구조로 형성되는지 의미 Elastic : 요청량에 상관없이 일정한 응답성 유지 Resillient : 일부분에 장애가 발생하더라도 응답성 유지 VALUE 리액티브 시스템의 핵심 가치 Responsive : 클라이언트의 요청에 즉각 응답 Maintainable .. 2022. 12. 9. [Spring Security] OAuth 2 OAuth2 개념 OAuth 2 전통적인 방식은 특정 애플리케이션에서 서비스를 제공하면서 사용자 크리덴셜을 직접 관리 반면 OAuth 2 인증 프로토콜은 특정 애플리케이션에서 사용자 인증을 직접 처리하는 것이 아니라 신뢰할 만한 서드 파티 애플리케이션에 인증을 위임하고 resource에 대한 자격 증명 토큰을 발급 후 그 토큰을 사용하여 서드 파티 애플리케이션 서비스를 사용하게 해주는 방식 외부 크리덴셜이 직접적으로 제공되지 않아 크리덴셜을 따로 관리할 필요가 없어 보안성 향상 OAuth 2 사용 애플리케이션 유형 써드 파티 애플리케이션에서 제공하는 API 써드 파티에서 제공하는 API를 직접적으로 사용하는 애플리케이션을 구현할 때 사용 추가 인증 서비스 제공 용도 추가적인 인증 서비스를 제공하기 위한 .. 2022. 12. 9. 이전 1 ··· 25 26 27 28 29 30 31 ··· 41 다음