반응형 개발248 [Spring Cloud] Spring Cloud Config 개념 및 구현 Spring Cloud Config 개념 Spring Cloud Config란 분산 시스템에서 설정(Config)에 대한 외부 분리 및 중앙 저장소 역할을 지원한다. 설정을 위한 별도의 서버(Config Server)를 구성하고, 실행 중인 애플리케이션(Config Client Application)이 Config Server에서 설정 정보를 받아와서 적용하는 방식으로 동작한다. 실행 중에 설정값 변경이 필요한 경우 설정 저장소(Config Repo)만 변경하고, 애플리케이션은 갱신만 하면 된다. 따라서 설정의 변경에 따른 애플리케이션의 재빌드 맟 재기동 불필요하다. 여러 서버의 설정 파일을 중앙 서버에서 일관되게 관리 가능하다는 관리의 편의성도 있다. 단, git 서버 같은 설정 저장소에 의한 장애 .. 2024. 6. 15. [MSA] MSA 마이크로서비스 아키텍처 패턴 이해 MSA 패턴 및 기술 관련해서 CQRS, API Gateway, BFF, SAGA, 이벤트 소싱 등 많은 개념들과 기술들이 있다. 이런 개념들을 하나씩 알아가는 것도 중요하지만 좀 더 넓은 개념에서 MSA에는 어떤 문제들이 있고 이를 해결하기 위해 어떤 해결책들을 사용하는지 전체적으로 한 번 정리를 하는 것도 좋을 것 같다. 아래는 MSA 패턴으로 유명한 크리스 리처드슨이 관리하는 사이트에 나와있는 MSA 패턴을 고수준에서 바라본 그림이다. 가장 왼쪽은 어플리케이션 아키텍처 패턴으로 모놀리식과 마이크로 서비스가 있고, 나머지 오른쪽에 있는 그룹들은 마이크로 서비스 아키텍처 패턴의 문제를 해결하는 패턴들이다. 왼쪽 상단의 범례 부분에서 Motivation Pattern(선행되는 패턴), Solution P.. 2024. 5. 26. [MSA] MSA(마이크로 서비스 아키텍처)는 무엇인가?(개념, 장단점, 조건 등) MSA 배경비즈니스 Agility(민첩성): 비즈니스의 경쟁력을 위해서 끊임없고 빠른 비즈니스 변화를 IT기술을 활용해서 추구.예전에는 IT기술이 비즈니스를 후방에서 지원하는 서비스였지만 이제는 비즈니스의 근본적인 혁신을 위해 비즈니스의 주체를 IT에 맡긴다(DX)기술적으로는 결국 배포 빈도가 빠르다(ex. 아마존: 2014년, 초단 1.5회 배포를 한다) ⇒ 그만큼 서비스가 계속 개선하고 변화하고 있다는 의미다IT선진회사들은 안정적이고 빈번하게 배포를 하기 위한 방법이 무엇일까?? 를 고민하기 시작했고, 기술적인 변화를 주도하기 시작.클라우드 인프라: 원하는 시점에 필요한 만큼 빠르게 인프라 제공, 사용한만큼 비용 지불, 사용빈도에 따라 자동 Scale Out/In 처리클라우드 인프라에 적합한 어플리케.. 2024. 5. 26. [Rancher Desktop] Port Forwarding 설정 - 쿠버네티스(k8s) pod, service 실행하고 접속하기 Docker Desktop이 유료화 되면서 로컬에서 Rancher Desktop을 사용하고 있다. Rancher Desktop의 Port Forwarding 설정을 통해 쿠버네티스(k8s) 환경에서 가장 기본적인 pod, service를 실행하고 접속해본다. 일단 테스트는 nginx로 진행을 할 예정이고 k8s 클러스터에 아래와 같이 실행을 한다.# pod 실행$ kubectl run test-nginx --image nginx --port=80# service 실행$ kubectl expose pod test-nginx서비스가 ClusterIP로 생성이 되었다. 일반적인 k8s 환경에서는 NodePort나 로드밸런스 타입으로 선언해야 외부에서 접속 가능하지만 Rancher Desktop에서는 PortF.. 2024. 5. 23. [API Gateway - KrakenD] KrakenD 소개 및 구성해보기 MSA를 구성할 때 API Gateway는 필수적으로 구성을 한다. MSA 패턴에서도 외부 API 패턴으로 API Gateway에 대한 중요성을 강조하고 있다. API Gateway가 필요한 이유는 네트워크 지연 경감(클라이언트와 서비스 간 통신 빈도 최소화 필요), 클라이언트 프로그램 복잡성 방지(서비스 호출 처리 최소화), 서비스 변경에 따른 클라이언트 영향도 최소화, 인증, 로깅 등 많은 이유가 있다. 기존에는 Kong API Gateway가 많이 언급되고 적용이 되었는데 이번에 KrakenD라는 것도 알게되서 정리해본다. KrakenD 특징1. KrakenD는 API Gateway 기능을 수행 2. 현존하는 API Gateway중 가장 빠른 성능(3,479 requests/sec) 3. Go .. 2024. 5. 19. MAC 메모 Touch ID(지문 암호풀기) 사용하기 MAC 메모에서 암호 설정을 통해서 메모를 잠글 수 있다. MAC 메모에서 Touch ID 기능을 사용해서 지문으로 잠긴 메모의 암호를 푸는 방법을 알아본다. MAC 키보드에 Touch ID 기능이 있더라도 메모 앱에서 기본 세팅이 비밀번호를 직접 입력하도록 되어 있는데 메모의 설정을 통해서 Touch ID 기능을 활성화 할 수 있다. 메모 앱을 실행시키고 상단 메뉴에서 '설정'을 클릭한다. 설정의 제일 하단을 보면 Touch ID 사용이 체크가 되어 있는지 확인 후 체크를 해주면 된다. 이제 메모 실행 시 매번 암호를 입력할 필요없이 지문으로 간단하게 메모를 확인할 수 있다. 2024. 5. 11. VSCode Amazon Q(구 AWS Codewhisperer) 사용하기 VSCode에서 AI 기반 코드 자동완성을 지원해주는 Amazon Q(구 AWS CodeWhisperer)를 적용하고 사용해본다. 먼저 VSCode 확장프로그램에서 CodeWhisperer로 검색해서 AWS Toolkit을 설치한다. 설치가 완료되면 아래와 같은 화면이 뜨고 가장 왼쪽에 있는 "Amazon Q + CodeWhisperer" 옵션의 버튼을 클릭한다. VSCode에 AWS Builder ID 관련 팝업이 뜨는데 클릭하고 넘긴다. AWS Builder ID 인증을 위해 브라우저 열기를 한다. 복잡한 인증 과정이 있는 것은 아니고 이메일 주소만 있으면 Builder ID 쉽게 생성할 수 있다. 브라우저가 열리고 Builder ID가 없는 경우 생성을 진행하고, 있는 경우 로그인을 해준다. Bu.. 2024. 4. 28. MAC 터미널 Amazon Q(구 AWS Codewhisperer)사용해보기 그동안 MAC에서 Fig를 설치해서 자동완성 등을 활용해 터미널을 조금 편하게 사용해왔다. 하지만 이제 Fig 사이트에 접속을 하면 아래와 같이 Amazon Codewhisperer에 흡수됐다고 나온다. 이제는 Codewhisperer가 Amazon Q로 변경이 됐다. Amazon Q(구 Amazon Codewhisperer)를 한번 설치해본다. Codewhisperer는 인공지능을 활용해 코드를 자동 완성 시켜주는 copilot과 같은 개념의 툴이다. 예를들어, vscode, IntelliJ,, AWS Cloud9 등에 플러그인으로 설치해서 사용하면 프로그래밍 코드를 자동으로 작성해줘서 개발이 편해진다. 프로그래밍 코드 자동완성 외에 Codewhisperer는 Mac OS에 한해서 터미널에서 자동완성.. 2024. 4. 24. 이전 1 2 3 4 5 6 7 ··· 31 다음 반응형