본문 바로가기

전체 글85

[TIL 7] 부족한 부분 채워 나가기 Today I Learned🔥 오늘은 알고리즘을 1문제 풀고, Chapter 1. 개인 프로젝트 진행 및 Entity 연관 관계를 공부하였다[ 문제 ]Chapter 1. 프로젝트 진행하며 느낀 점은 Entity 연관 관계에 대한 이해가 부족하다는 것이었다. 관계에 있어서 어느 쪽이 외래 키의 주인이며 @ManyToOne과 @OneToMany의 정확한 차이점을 구별하지 못하였고, 단방향과 양방향을 사용하는 이유에 대해서도 정확히 알지 못하고 있는 것 같다고 느꼈다 새로운 기술을 습득하며 앞으로 나아가는 것도 중요하지만, 지금처럼 스스로 공부가 부족하다고 느끼는 부분을 인지하고 부족한 부분을 채워나가는 것 또한 굉장히 중요하다고 느꼈다.프로젝트를 통하여 더 늦기 전에 나에게 부족한 부분을 확인할 수 있어서.. 2024. 8. 8.
[TIL 6] 컴퓨터는 죄가 없다, Redis정리 Today I Learned🔥 오늘은 알고리즘을 1문제 풀고, Chapter 1. 개인 프로젝트 진행 및 Redis를 공부하였다.현재 Chapter 1. 개인 프로젝트 과제를 진행 중에 있는데, "필수 기능 3"을 구현하는데 하루가 걸렸다.. 물론 튜터님의 도움을 받아서 빠르게 해결하고 넘어갈 수 있는 문제지만, 현재 배움의 과정 속에 있는 만큼 비록 시간이 오래 걸리더라도 스스로 해결하고 넘어가고 싶다는 고집이 있었다ㅎ"필수 기능 3"을 구현하는데 비록 시간이 오래 걸렸지만 문제없이 완성하고, Postman을 사용하여 검증을 시도해 봤는데 에러가 발생하였다. 완성된 코드를 몇 번을 다시 돌려보고, 몇 번을 다시 만들어 봤는지 모르겠다..😭 그러다 포기를 하고 싶어질 때쯤 문제를 발견하였는데, 코드에.. 2024. 8. 7.
[TIL5] MSA 마무리 Today I Learned마지막 강의에서 튜터님이 쿠버네티스에 대하여 언급을 하셨다. 강의에서 사용은 하지 않았지만 언급을 해주신 만큼 쿠버네티스에 대하여 간단히 설명을 하고, MSA 강의를 들으면서 느꼈던 부분을 작성며 MSA를 마무리하려고 한다[ Kubernetes ]쿠버네티스(Kubernetes)는 컨테이너화된 애플리케이션의 배포, 확장, 운영을 자동화하는 오픈소스 플랫폼입니다.Google에서 개발하고 현재는 CNCF(Cloud Native Computing Foundation)에서 관리합니다.컨테이너 오케스트레이션 도구로, 다수의 컨테이너를 효율적으로 관리할 수 있습니다.[ 쿠버네티스와 Spring Cloud 비교 ] 공통점 확장성: 둘 다 마이크로서비스 아키텍처의 확장성을 지원합니다. 관리성:.. 2024. 8. 6.
[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.