본문 바로가기

전체 글94

[TIL 4] 보안 구성 Gateway를 통한 Security이해하기 Today I Learned오늘은 보안을 구성하는 Security를 학습하였다. Security는 배워도 배워도 끝없이 어려운 거 같다 😭 🔥 나중에 다시 봐도 이해하기 쉽게 정리를 해보도록 하자[ 보안의 중요성 ]마이크로서비스 아키텍처에서는 각 서비스가 독립적으로 배포되고 통신하기 때문에 보안이 매우 중요합니다.데이터 보호, 인증 및 권한 부여, 통신 암호화 등을 통해 시스템의 보안성을 확보해야 합니다.[ OAuth2 ]OAuth2는 토큰 기반의 인증 및 권한 부여 프로토콜입니다.클라이언트 애플리케이션이 리소스 소유자의 권한을 얻어 보호된 리소스에 접근할 수 있도록 합니다.'OAuth2는 네 가지 역할을 정의합니다: 리소스 소유자, 클라이언트, 리소스 서버, 인증 서버[ JWT의 주요 특징 ] 자가.. 2024. 8. 5.
[MSA] API 게이트웨이 Spring Cloud Gateway 🔥 SpringCloudGateway를 이해하고 동작해 보기[  API 게이트웨이의 주요 기능 ] 라우팅: 클라이언트 요청을 적절한 서비스로 전달 인증 및 권한 부여: 요청의 인증 및 권한을 검증 로드 밸런싱: 여러 서비스 인스턴스 간의 부하 분산 모니터링 및 로깅: 요청 및 응답을 로깅하고 모니터링 요청 및 응답 변환: 요청과 응답을 변환하거나 필터링[ Spring Cloud Gateway ]Spring 프로젝트의 일환으로 개발된 API 게이트웨이로, 클라이언트 요청을 적절한 서비스로 라우팅하고 다양한 필터링 기능을 제공합니다.Spring Cloud Netflix 패키지의 일부로, 마이크로서비스 아키텍처에서 널리 사용됩니다.[ Spring Cloud Gateway의 주요 특징 ] 동적 라우팅: 요청의.. 2024. 8. 5.
[MSA] 로드 밸런싱 Ribbon 🔥 로드 밸런싱을 공부하고, 로드 밸런싱 알고리즘 라운드 로빈을 사용해 보자![ 로드 밸런싱 ]로드 밸런싱은 네트워크 트래픽을 여러 서버로 분산시켜 서버의 부하를 줄이고, 시스템의 성능과 가용성을 높이는 기술이다.서버 간 트래픽을 고르게 분배하여 특정 서버에 부하가 집중되는 것을 방지해 준다.종류로는 클라이언트 사이드 로드 밸런싱, 서버 사이드 로드 밸런싱이 있다.[ 클라이언트 사이드 로드 밸런싱 ]클라이언트 사이드 로드 밸런싱은 클라이언트가 직접 여러 서버 중 하나를 선택하여 요청을 보내는 방식이다.클라이언트는 서버의 목록을 가지고 있으며, 이를 바탕으로 로드 밸런싱을 수행한다.[ FeignClient의 주요 특징 ] 선언적 HTTP 클라이언트: 인터페이스와 어노테이션을 사용하여 REST API를 호.. 2024. 8. 4.
[MSA] 서비스 디스커버리 Eureka 🔥 서비스 디스커버리 Eureka에 대하여 공부하고, Eureka 설정 및 실행하여 동작 확인하기[ 서비스 디스커버리 ]서비스 디스커버리는 마이크로서비스 아키텍처에서 각 서비스의 위치를 동적으로 관리하고 찾아주는 기능을 한다.각 서비스는 등록 서버에 자신의 위치를 등록하고, 다른 서비스는 이를 조회하여 통신한다.주요 기능으로는 서비스 등록, 서비스 조회, 헬스 체크 등이 있다.[ Eureka ]넷플릭스가 개발한 서비스 디스커버리 서버로, 마이크로서비스 아키텍처에서 각 서비스의 위치를 동적으로 관리한다.모든 서비스 인스턴스의 위치를 저장하는 중앙 저장소 역할을 한다.서비스 인스턴스의 상태를 주기적으로 확인하여 가용성을 보장한다. (헬스 체크)여러 인스턴스를 지원하여 고가용성을 유지한다.[ Eureka 서.. 2024. 8. 4.
[TIL 3] CircuitBreaker와 Resilience4j Today I Learned오늘은 서킷 브레이커에 대하여 공부를 하였다서비스 디스커버리와 로드 밸런싱은 어제 수업이 끝나고 추가로 공부하였으므로 주말을 이용하여  기록을 남겨야겠다 🧑‍💻[ 서킷 브레이커 ]서킷 브레이커는 마이크로서비스 간의 호출 실패를 감지하고 시스템의 전체적인 안정성을 유지하는 패턴이다. 외부 서비스 호출 실패 시 빠른 실패를 통해 장애를 격리하고, 시스템의 다른 부분에 영향을 주지 않도록 한다. 서킷 브레이커의 주요 상태 3가지Closed: 서킷 브레이커의 초기 상태로, 모든 요청이 정상적으로 통과하는 상태를 의미한다.Open: 서킷 브레이커가 설정된 실패 임계치를 초과하여 활성화된 상태이다. 이 상태에서는 모든 요청이 즉시 실패하고, 원래 서비스에 전달되지 않는다.Half - .. 2024. 8. 2.
[TIL 2] MSA와 Spring Cloud Today I Learned오늘은 알고리즘을 2문제를 풀고, MSA, Spring Cloud에 대하여 공부하였다.알고리즘은 이제 처음 시작한 만큼, 쉬운 문제부터 하나씩 차근차근 풀어나갈 예정이다.Spring Cloud를 처음 공부하는 코린이🧑‍💻 입장에서 신기했던 것은 넷플릭스가 Eureka, Ribbon, Hystrix, Zull 을 개발했다는 것이었다. 넷플릭스가 Spring Cloud를 개발한 이유에 대해서는 블로그 중간에서 알려주기 때문에 블로그를 끝까지 읽어줘야 한다. [ MSA ]MicroService Architecture의 줄임말로, 애플리케이션을 작고 독립적으로 배포 가능한 서비스로 분할하는 설계 방식이다. 하나의 애플리케이션을 여러 개의 독립적인 서비스로 분리하여 개발, 배포, 유.. 2024. 8. 1.