분류 전체보기 133

Spring Cloud Bus

Spring Cloud Bus - 분산 시스템의 노드를 경량 메시지 브로커와 연결 - 상태 및 구성에 대한 변경 사항을 연결된 노드에게 전달(Broadcast) AMQP(Advanced Message Queuing Protocol) - 메시지 지향, 큐잉, 라우팅(P2P), 신뢰성, 보안 - Erlang, RabbitMQ에서 사용 Kafka 프로젝트 - Apache가 Scalar 언어로 개발한 오픈 소스 메시지 브로커 프로젝트 - 분산형 스트리밍 플랫폼 - 대용량 데이터를 처리 가능한 메시징 시스템 RabbitMQ vs Kafka Actuator busrefresh Endpoint 1. RabbitMQ 설치 및 실행 2. Dependencies 추가 - Config Server : actuator, bu..

Spring Cloud Config

Spring Cloud Config 분산 시스템에서 서버, 클라이언트 구성에 필요한 설정 정보를 외부 시스템에서 관리 하나의 중앙화 된 저장소에서 구성요소 관리 가능 Local Git Repository Config-service 설정 1. pom.xml 설정 'spring-cloud-config-server' Dependencies 추가, @EnableConfigServer 추가 2. .yml 파일 설정 spring.cloud.config.server.git.uri: file://{로컬 깃 폴더 경로} - 로컬 깃 폴더에 있는 .yml 파일 우선순위 application.yml -> application-name.yml -> application-name-.yml 예를 들어, 로컬 깃 폴더에 appli..

해당 카테고리는 이도원님의 인프런 강의 복습용 카테고리입니다.

https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%A7%88%EC%9D%B4%ED%81%AC%EB%A1%9C%EC%84%9C%EB%B9%84%EC%8A%A4/dashboard Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) - 인프런 | 강의 Spring framework의 Spring Cloud 제품군을 이용하여 마이크로서비스 애플리케이션을 개발해 보는 과정입니다. Cloud Native Application으로써의 Spring Cloud를 어떻게 사용하는지, 구성을 어떻게 하는지에 대해 www.inflearn.com

RabbitMQ란?

1. RabbitMQ란 무엇인가? RabbitMQ는 AMQP(Advanced Message Queuing Protocol) 메시지 브로커 소프트웨어이다. 메시지 브로커는 분산 시스템에서 서로 다른 애플리케이션 간의 통신을 가능하게 해주는 중간자 역할을 한다. 메시지 큐 기반으로 동작하며, 비동기 메시지 전송, 작업 큐, 로깅, 분산 시스템 등 다양한 용도로 사용할 수 있다. 2. RabbitMQ의 구조와 구성 요소 RabbitMQ 메시지 브로커의 아키텍처는 크게 Producer, Exchange, Queue, Consumer로 구성된다. Producer는 메시지를 생성하고 Exchange로 전송한다. Exchange는 Producer가 생성한 메시지를 받아서 적절한 Queue로 라우팅한다. 4가지 유형의..

Docker Architecture

Docker는 클라이언트-서버 아키텍처를 사용한다. Docker 클라이언트와 데몬은 UNIX 소켓 또는 네트워크 인터페이스를 통해 REST API를 사용하여 통신한다. UNIX 소켓 Unix 소켓(Unix domain socket)은 Unix 계열 운영 체제에서 프로세스간 통신(IPC, Inter-Process Communication)을 위해 사용되는 방법 중 하나이다. TCP/IP 소켓과 유사한 방식으로 작동하지만 TCP/IP 소켓과 달리 네트워크를 통하지 않고 로컬 시스템에서만 통신할 수 있다. Unix 소켓은 일반적으로 파일 시스템에서 파일처럼 다루어지며, 파일 시스템 경로를 통해 접근 가능하다.

DockerNetwork

1. 컨테이너가 통신하는 방법 docker0 virtual ethernet bridge : 172.17.0.0/16 L2 통신기반 container 생성 시 해당 컨테이너에 veth 인터페이스 생성 모든 컨테이너는 외부 통신을 docker0 통해 진행 container running 시 172.17.X.Y 로 IP 주소 할당 2. 컨테이너 포트를 외부로 노출하는 방법 port-forwarding container port를 외부로 노출시켜 외부 연결 허용 iptables rule을 통한 포트 노출 -p hostPort:containerPort -p containerPort -P 3. 컨테이너 네트워크 추가하는 방법 user-defined bridge network 생성 $ docker network cr..

프로메테우스란?

1. 프로메테우스란? 프로메테우스는 오픈소스 기반의 시계열 데이터 수집, 저장, 분석, 시각화, 알림 기능 등을 제공하는 모니터링 시스템이다. 강력한 시계열 데이터 처리 엔진을 가지고 있어, 대규모 분산 시스템에서 수억 건 이상의 메트릭 데이터를 처리할 수 있다. 메트릭(metric)은 모니터링 대상 시스템에서 수집되는 측정 가능한 데이터를 의미한다. (서버의 CPU 사용률, 메모리 사용률, 디스크 I/O 속도, 네트워크 전송량 등) 메트릭은 일정한 시간 간격으로 수집되며 시계열 데이터로 수집되는 데이터는 매우 많은 양이 된다. 이를 쉽게 분석하고 시각화하기 위해서는 모니터링 도구가 필요하다. 프로메테우스는 다양한 데이터 소스로부터 메트릭 데이터를 수집하고, 이를 쿼리하여 시각화 및 분석하는 기능을 제..

정기간행물 발행

매일 산책하며 새로운 기술 스택이나 정보들을 유튜브를 통해 접하고 있다. 이것들을 그냥 내버려두면 잊어버릴 것이 분명하기 때문에 조금이라도 더 기억하고자 정기간행물을 일간, 주간, 월간 단위로 게시하려고 한다. 기간마다 내용적으로 큰 차이가 있는 것이 아니고, 일간 : 10분 안에 작성할 수 있는 양 주간 : 30분 안에 작성할 수 있는 양 월간 : 1시간 안에 작성할 수 있는 양 내가 글을 작성할 때 걸리는 시간정도로 생각해주면 좋겠다. 오늘은 어제 접했던 프로메테우스라는 오픈소스 모니터링 시스템으로 시작해보겠다.

일상 2023.03.27

소프트웨어 마에스트로 14기 최종 합격 후기 및 앞으로의 계획

https://godhkekf24.tistory.com/85 SSAFY 7기 최종 합격 후기 및 앞으로의 계획 이 글은 최종결과를 알리고 앞으로의 계획을 세우는 데에 집중하려고 한다. 선발과정에서의 자세한 내용은 아래 링크에 비교적 상세히 적어놨다. https://godhkekf24.tistory.com/67?category=975398 우테코 godhkekf24.tistory.com 21년 말에 삼성 청년 SW 아카데미 최종 합격 후기글을 작성했는데 비슷한 종류의 글을 작성하게 될지 몰랐다. 22년 1월부터 12개월 동안의 SSAFY 7기 과정이 끝나고 거의 2달 동안의 취준기간을 가졌다. 1년 동안 싸피를 진행하면서 단순히 백엔드 개발자로 성장하고자 했지만 취업 준비를 진행하면서 내가 원하는 직무가 ..

일상 2023.03.26

[백준 - JAVA] 9935번 : 문자열폭발

https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net import java.util.ArrayDeque; import java.util.Deque; import java.util.Scanner; public class Q_9935 { //두 줄 받을 거라 오랜만에 Scanner 사용해보자. static Scanner sc = new Scanner(System.in); //끝 쪽 추가 삭제를 주로 할테니까 ArrayDeque static..