-
[Udemy] 마이크로서비스 아키텍처수업 내용 정리 2024. 9. 17. 16:14
강의 정보이벤트 기반 마이크로서비스 아키텍쳐: Spring Boot, Kafka, Elastic 메모Microservices: Scalable services with Independent development and deployment확장성 -> 더 많은 요청이 필요한 서비스의 인스턴스를 확장할 수 있다. 다른 서비스보다 처리량을 늘려 지속적 응답Spring stack -> 자동 구성으로 종속성 제공 Microservices Patterns:Externalized configuration(외부화된 구성) -> Spring Cloud Config애플리케이션 자체에서 configuration을 분리하고 관리할 수 있다.configuration을 활성화하거나 비활성화하기 위해 컴파일이나 빌드가 필요하지 않다..
-
Kafka, Redis🎸 2024. 9. 17. 15:09
Message Queue메세지 지향 미들웨어(MOM: Message Oriented Middleware)를 구현한 시스템으로 프로세스 간의 데이터를 교환할 때 사용하는 기술이다.message는 endpoint 간 직접적으로 통신하지 않고, 중간의 queue를 통해 중개된다.Producer: 정보를 제공하는 자Consumer: 정보를 제공받아 사용하려는 자Queue: Producer의 데이터를 임시 저장 및 Consumer에 제공 BrokerMessage Brokerpublisher가 생산한 메세지를 message queue에 저장하고, 저장된 데이터를 consumer가 가져갈 수 있도록 중간 다리 역할을 수행한다. pub/sub 구조로서, 대표적으로 Redis, RabbitMQ 소프트웨어, GCP의 pu..
-
[Inflearn] 채팅 구현 - Websocket 통신수업 내용 정리 2024. 9. 14. 23:17
강의 정보대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기GoLang(Node.Js), React, Websocket 메모1. 기본 실행 함수 관리go.mod에 사용할 패키지들이 위치main.go에서 network.NewServer(), StartServer()2. Framework를 이용해 서버 실행Gin 프레임워크 사용해서 Network -> engin *gin.Engine3. 미들웨어 설정n.engin.Run(":8080") -> 8080 포트 실행4. Cors 설정Use: 모든 api나 라우터에 대해서 특정 범용적인 처리를 해주는 함수AllowOrigins: 특정 도메인을 허용 -> 모든 도메인 허용함AllowMethods: 원하는 API에 대한 메서드들을 지정ExposeHeaders:..
-
[BOJ/Python] 백준 2470 - 두 용액Solve 2024. 9. 10. 10:46
문제더보기문제KOI 부설 과학연구소에서는 많은 종류의 산성 용액과 알칼리성 용액을 보유하고 있다. 각 용액에는 그 용액의 특성을 나타내는 하나의 정수가 주어져있다. 산성 용액의 특성값은 1부터 1,000,000,000까지의 양의 정수로 나타내고, 알칼리성 용액의 특성값은 -1부터 -1,000,000,000까지의 음의 정수로 나타낸다.같은 양의 두 용액을 혼합한 용액의 특성값은 혼합에 사용된 각 용액의 특성값의 합으로 정의한다. 이 연구소에서는 같은 양의 두 용액을 혼합하여 특성값이 0에 가장 가까운 용액을 만들려고 한다.예를 들어, 주어진 용액들의 특성값이 [-2, 4, -99, -1, 98]인 경우에는 특성값이 -99인 용액과 특성값이 98인 용액을 혼합하면 특성값이 -1인 용액을 만들 수 있고, 이 ..
-
[BOJ/Python] 백준 20922 - 겹치는 건 싫어Solve 2024. 9. 10. 10:37
문제더보기문제홍대병에 걸린 도현이는 겹치는 것을 매우 싫어한다. 특히 수열에서 같은 원소가 여러 개 들어 있는 수열을 싫어한다. 도현이를 위해 같은 원소가 $K$개 이하로 들어 있는 최장 연속 부분 수열의 길이를 구하려고 한다. $100\,000$ 이하의 양의 정수로 이루어진 길이가 $N$인 수열이 주어진다. 이 수열에서 같은 정수를 $K$개 이하로 포함한 최장 연속 부분 수열의 길이를 구하는 프로그램을 작성해보자.입력첫째 줄에 정수 $N$ ($1 \le N \le 200\,000$)과 $K$ ($1 \le K \le 100$)가 주어진다.둘째 줄에는 ${a_1, a_2, ... a_n}$이 주어진다 ($1 \le a_i \le 100\,000$)출력조건을 만족하는 최장 연속 부분 수열의 길이를 출력한..
-
[BOJ/Python] 백준 21921 - 블로그Solve 2024. 9. 10. 10:33
문제더보기문제찬솔이는 블로그를 시작한 지 벌써 N일이 지났다.요즘 바빠서 관리를 못 했다가 방문 기록을 봤더니 벌써 누적 방문 수가 6만을 넘었다.찬솔이는 X일 동안 가장 많이 들어온 방문자 수와 그 기간들을 알고 싶다.찬솔이를 대신해서 X일 동안 가장 많이 들어온 방문자 수와 기간이 몇 개 있는지 구해주자.입력첫째 줄에 블로그를 시작하고 지난 일수 N와 X가 공백으로 구분되어 주어진다.둘째 줄에는 블로그 시작 1일차부터 N일차까지 하루 방문자 수가 공백으로 구분되어 주어진다.출력첫째 줄에 X일 동안 가장 많이 들어온 방문자 수를 출력한다. 만약 최대 방문자 수가 0명이라면 SAD를 출력한다.만약 최대 방문자 수가 0명이 아닌 경우 둘째 줄에 기간이 몇 개 있는지 출력한다.풀이import sysinput..
-
docker 설정수업 내용 정리 2024. 8. 26. 17:48
2024-08-26~27docker -v : docker 버전 확인docker compose version : docker compose 버전 확인docker pull tomcat:9.0.93-jre11-temurin-noble : tomcat:9.0.93-jre11-temurin-noble 버전 설치docker pull mariadb : mariadb 설치docker images : docker에 현재 설치된 이미지 확인docker image inspect tomcat : docker pull tomcat : docker에 최신 버전의 톰캣 설치docker save -o ./tomcat_image tomcat:latest : 최신 버전의 톰캣에 latest 별칭 추가docker rmi 3b310909d..
-
[BOJ/Python] 백준 2302 - 극장 좌석Solve 2024. 8. 26. 15:56
문제더보기문제어떤 극장의 좌석은 한 줄로 되어 있으며 왼쪽부터 차례대로 1번부터 N번까지 번호가 매겨져 있다. 공연을 보러 온 사람들은 자기의 입장권에 표시되어 있는 좌석에 앉아야 한다. 예를 들어서, 입장권에 5번이 쓰여 있으면 5번 좌석에 앉아야 한다. 단, 자기의 바로 왼쪽 좌석 또는 바로 오른쪽 좌석으로는 자리를 옮길 수 있다. 예를 들어서, 7번 입장권을 가진 사람은 7번 좌석은 물론이고, 6번 좌석이나 8번 좌석에도 앉을 수 있다. 그러나 5번 좌석이나 9번 좌석에는 앉을 수 없다.그런데 이 극장에는 “VIP 회원”들이 있다. 이 사람들은 반드시 자기 좌석에만 앉아야 하며 옆 좌석으로 자리를 옮길 수 없다.오늘 공연은 입장권이 매진되어 1번 좌석부터 N번 좌석까지 모든 좌석이 다 팔렸다. VI..
-
[BOJ/Python] 백준 1660 - 캡틴 이다솜Solve 2024. 8. 26. 15:40
문제더보기문제캡틴 이다솜은 자신의 해적선에 적을 공격하기 위한 대포알을 많이 보관해 놓는다. 다솜이는 미적감각이 뛰어나기 때문에, 대포알은 반드시 사면체 모양으로 쌓아놓아야 한다고 생각한다. 사면체를 만드는 방법은 길이가 N인 정삼각형 모양을 만든다. 그 위에 길이가 N-1인 정삼각형 모양을 얹고 그위에 계속 해서 얹어서 1크기의 정삼각형 모양을 얹으면 된다.예를 들어, 사이즈가 3크기의 한 더미 모양은 다음과 같다. X X X X X X XX X X각각의 삼각형은 1, 3, 6, 10 ,..... 와 같이 대포알을 가지고 있다. 따라서 완벽하게 쌓았을 때, 한 사면체에는 1, 4, 10, 20 ,.... 개를 가지고 있을 것이다.현재 다솜이의 해적선에 대포알이 N개가 있다. 다솜이는 영식이를 ..
-
[BOJ/Python] 백준 1495 - 기타리스트Solve 2024. 8. 26. 15:27
문제 더보기문제Day Of Mourning의 기타리스트 강토는 다가오는 공연에서 연주할 N개의 곡을 연주하고 있다. 지금까지 공연과는 다른 공연을 보여주기 위해서 이번 공연에서는 매번 곡이 시작하기 전에 볼륨을 바꾸고 연주하려고 한다.먼저, 공연이 시작하기 전에 각각의 곡이 시작하기 전에 바꿀 수 있는 볼륨의 리스트를 만들었다. 이 리스트를 V라고 했을 때, V[i]는 i번째 곡을 연주하기 전에 바꿀 수 있는 볼륨을 의미한다. 항상 리스트에 적힌 차이로만 볼륨을 바꿀 수 있다. 즉, 현재 볼륨이 P이고 지금 i번째 곡을 연주하기 전이라면, i번 곡은 P+V[i]나 P-V[i] 로 연주해야 한다. 하지만, 0보다 작은 값으로 볼륨을 바꾸거나, M보다 큰 값으로 볼륨을 바꿀 수 없다.곡의 개수 N과 시작 볼..