Time 개발자
취소

Spring MicroService 22 Spring MicroService 보안

우리는 지난 시간까지 Spring-cloug-Gateway를 공부하면서 MSA와 관련된 모든 하위 인스턴스 접근은 GateWay로 통한다는 것을 배웠고 이를 통해서 각 하위 인스턴스와 통신 및 Gateway의 사전 필터 사후 필터를 만들어서 API 추적까지 진행을 해보았습니다 그리고 미니프로젝트 까지 만들어보았습니다 이번 시간에는 MSA의 보안에 대...

Spring MicroService 21 Spring MicroService 미니프로젝트

미니프로젝트 이번시간에는 앞에서 배운것들을 총망라해서 미니프로젝트를 한번 만들어보겠습니다 이제까지 배운것을 전부 다 쓰지는 않겠지만 그래도 각각의 핵심 파트건들을 사용해서 간단한 curd 어플리케이션을 만들어보겠습니다 프로젝트 구조 이 프로젝트는 empClient 와 savingMoney 인스턴스를 만들어서 empCliet 에서 emp 를 만들고 ...

Spring MVC ThreadLocal

ThreadLocal 각 스레드가 독립적으로 값을 저장하고 사용할 수 있도록 하는 메커니즘을 제공합니다. 이는 다중 스레드 환경에서 여러 스레드가 같은 객체를 동시에 사용하지 않도록 해주는 중요한 도구입니다. SecurityContext 우리는 시큐리티를 하면서 ThreadLocal를 간접적으로 사용했습니다 그 객체는 바로 SecurityContex...

Spring MicroService 20 Spring MicroService Spring-Cloud-GateWay 사전필터

우리는 지난시간에 클라우드 게이트를 구성하고 완전히 클라이언트로 부터 숨겨져 있는 인스턴스를 엔드포인트로 호출하는 것을 찾아보았습니다 오늘은 클라우드의 다른 기능인 사전필터에 대해서 알아보도록 하겠습니다 필터 이는 MVC 나 시큐리티를 하게 되면 지겹도록 듣게 되는 클래스 중에 하나입니다 역활은 정수기 필터처럼 여과하는 것입니다 정수기 필터는 특정...

Spring MicroService 19 Spring MicroService Spring-Cloud-GateWay 2

지난시간에는 스프링 게이트웨이를 구성하는 작업을 마쳤습니다 그럼 이제는 어떻게 사용자들이 게이트웨이 를 이용해서 해당 엔드포인트까지 도달 할 수 있는지 보겠습니다 전체소스 https://gitlab.com/kimdongy1000/spring-cloud-project/-/tree/main-gateway?ref_type=heads 지난시간하고 변경된 ...

Spring MicroService 18 Spring MicroService Spring-Cloud-GateWay

지난시간까지 클라이언트 회복성에 대해서 공부를 했습니다 이번시간은 제가 생각했을때의 핵심 부분인 스프링 클라우드 게이트웨이에 대해서 알아보겠습니다 계속해서 반복하자면 독립적인 모듈들은 숨겨져 있으며 클라이언트는 실제 서비스하는 핵심서버를 알지 못한다 입니다 이 점을 기억하면 진짜로 우리와 통신하는 서버 GateWay 이제까지 우리는 숨겨진척 하는 ...

Spring MicroService 17 Spring MicroService 클라이언트 회복성 및 Resilience4j - 속도 제한기

지난시간에는 Retry 패턴을 배워보았고 이번시간에는 속도 제한기 패턴을 알보도록 하겠습니다 속도제한기 속도제한기는 일정시간이내에 처리할 수 있는 요청의 수를 제한함으로써 시스템에 가해지는 부하를 조절 할 수 있습니다 2개의 구현체 SemaphoreBasedRateLimiter AtomicRateLimiter 에 대해서 알아볼것입니다 기본적으로 R...

Spring MicroService 16 Spring MicroService 클라이언트 회복성 및 Resilience4j - Retry 처리

지난시간에 Resilience4j 서킷브레이커에 대해서 알아보았습니다 이번에는 Retry 에 대해서 알아보겠습니다 영어단어만 봐서 아시겠지만 이 패턴은 재시도 패턴입니다 Retry 패턴 서비스가 처음 실패했을 때 서비스와 통신을 재시도 하는 역활입니다 즉 네트워크 일시적 요류가 발생했을때 해당 작업을 일정 시간동안 반복해서 재시도 하여 성공할 수 있...

Spring MicroService 15 Spring MicroService 클라이언트 회복성 및 Resilience4j - fallBack 처리

지난시간에 Resilience4j 서킷브레이커에 대해서 알아보았습니다 이번에는 fallBack 처리에 대해서 알아보겠습니다 fallBack 은 중재자로 서비스가 실패할때 해당 api 가로채서 다른 대안을 취할 수 있는 것입니다 전체소스 https://gitlab.com/kimdongy1000/spring-cloud-project/-/tree/mai...

Spring MicroService 14 Spring MicroService 클라이언트 회복성 및 Resilience4j - CircuitBreaker

지난시간까지는 EUREKA 서버를 이용해서 유레카 서버에 등록된 인스턴스끼리 다양하게 통신을 하면서 왜 유레카 서버가 필요한지 알아보았습니다 이번시간에는 클라이언트회복성 Resilience4j 에 대해서 알아보겠습니다 Resilience4j Resilience4j는 Netflix Hystrix로부터 영감을 받은 함수형 프로그래밍(functional...