본문 바로가기

반응형

programming

(93)
[MSA] Config 파일 관리를 위한 Spring cloud bus와 AMQP(Rabbit MQ) 1. 개요 저번 글에는 config 파일 즉 .yml파일 .properties파일을 외부에서 관리하고 해당 파일이 필요한 application에서 내용을 읽어오는 아키텍쳐를 설계하는 내용을 작성하였다. 이번에는 해당 아키텍쳐에서 AMQP 프로토콜을 사용에 한번에 End-point 메세지를 일괄적으로 전송해주는 Message Queue 서비스를 구현하기 위해 Spring cloud bus에 대한 내용을 적어볼 것이다. 2. 본문 - Message Queue 일단 이전의 구조에 대해 다시 살펴보자. 해당 구조를 보면 user_service 어플리케이션에서 변경사항이 생겼을 때 (설정 파일에 대한 변경사항) refresh라는 end point를 통해 변경된 결과를 가지고 왔다. 어플리케이션을 재기동 할 필요 ..
[프로그래머스] 68645번 - 삼각 달팽이 (재귀함수) 1. 문제 및 예제 이게 무슨 유형의 문제인가... 구현인가 싶었는데 재귀가 정답이었다. 배열에 그리는 문제를 전에 만나봐서 예외 처리 빼고는 어렵지 않게 설계할 수 있었다. 재귀함수 잘 쓰고 싶다.. 지금은 그냥 써야될 때 쓰는 수준? 책에서 본 알고리즘 풀이들은 재귀함수를 마치 무기처럼 자유자재로 쓰던데 그 경지에 도달할 때 까지 연습하고 싶다. https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이과정 문제를 나누는게 참 중요하다는걸 ..
[MSA] API gate-way 인증 설정과 Config service의 구현 1. 개요 해커톤에 참여하느라 정리글이 늦었다.. 한 강의를 몇개월째 듣고있는건지.. 사실 진도는 거의 막바지 이지만, 강의 정리는 조금 느린 수준.. 그래서 다시 천천히 정리하기로 했다. 이번 글은 API gate-way의 인증 설정 즉 Filter의 구현과 Config service의 개념 정리이다. 2. 본문 - api-gateway filter 구현 처음에 api-gateway에 왜 fiter까지 구현을 하는거지? 라는 생각을 했다. 결국 user-service로 넘어가면 해당 서비스에서 구현한 filter에서 다시 검증과정을 거칠것이기 때문이다. 지금 차근 차근 정리해보니 조금은 다른 원리이다. user-service: AuthenticationFilter - login 로직 실행 - login..
[MSA] Kafka 오류 해결... - Kafka를 완벽하게 삭제하는 방법 3주동안 멘탈 갈려서 쓰는글... 이번 글은 참고가 아니라 그냥 일기장 수준으로 내 신세한탄이 될 것이다... Inflearn에서 배운 kafka버전은 2.13이었다. 지금 시점 기준 최선 버전은 3.X여서 바로 2.13을 찾아 다운받았다. 일단 앞자리가 바뀌면 무슨 에러가 날지 모른다는 것을 비트코인 자동매매 만들면서 살로 느꼈기에... 버전은 최대한 맞춰봤다. 중요한건 강의자료대로 시행했다가 에러가 계속 났다는 것... sink에게 이상한 값을 보냈다.. 하... 그래서 kafka 파일을 전부 삭제하고 시행했는데.. 이상하게도 topic이 그래도 남아있었다. 그래서 connector파일과 jdbc파일까지 전부 삭제.. 그래도 이놈의 topic은 계속 나오기 시작했다... 하... 그래서 공식 문서를 ..
[백준 알고리즘] 1197번 - 최소 스패닝 트리 (크루스칼 알고리즘) 1. 문제 및 예시 실행 결과 solved.ac의 CLASS가 올라갈수록 모르는 알고리즘이 많다. 어제 토스 코테 한번 찍먹하고 많이 반성하게 됐다. 모르는 것을 공부하는게 맞는 것 같다. Union-find를 활용한 크루스칼 알고리즘을 공부하고 적용해보았다. 한큐에 초록 글자가 떠서 너무 좋았다. 출처: https://www.acmicpc.net/problem/1197 1197번: 최소 스패닝 트리 첫째 줄에 정점의 개수 V(1 ≤ V ≤ 10,000)와 간선의 개수 E(1 ≤ E ≤ 100,000)가 주어진다. 다음 E개의 줄에는 각 간선에 대한 정보를 나타내는 세 정수 A, B, C가 주어진다. 이는 A번 정점과 B번 정점이 www.acmicpc.net 2. 풀이과정 문제를 잘게 나눠봤다. 1. 문..
[백준 알고리즘] 2467번 - 용액 (투 포인터) 1. 문제 및 예시 실행 결과 투 포인터를 활용하는 문제... 나름 재밌었다. 보통 이런 경우는 이분탐색 처럼 구현을 하게 되는데 그 과정은 어렵지 않지만 어떤 문제로 접근해야하는지 찾는 과정이 이분탐색 혹은 투 포인터 문제의 핵심이라는 생각이 든다. 출처: https://www.acmicpc.net/problem/2467 2467번: 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 오름차순으로 입력되며, 이 수들은 모두 - www.acmicpc.net 2. 풀이과정 문제를 잘게 나눠봤다. 1. 입력 2. 이분탐색 진행 왼쪽과 오른쪽으로 부터 시작하여 두 값의 합이 0보다 크면 음수쪽이..
[백준 알고리즘] 11779번 - 최소비용 구하기 2 (Dijkstra에서 경로를 출력하는 방) 1. 문제 및 예시 실행 결과 간단한 다익스트라 문제이지만, 경로를 출력해야한다. 처음에는 문자열을 옮기는 방식으로 풀었는데, 원인을 알 수 없는 이유로 틀렸다는 문자만 계속 떴다. 그래서 경로를 배열에 저장하는 방식을 사용했다... 문자열도 같은 원리인데 대체 왜 그러는지 참... 출처: https://www.acmicpc.net/problem/11779 11779번: 최소비용 구하기 2 첫째 줄에 도시의 개수 n(1≤n≤1,000)이 주어지고 둘째 줄에는 버스의 개수 m(1≤m≤100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스 www.acmicpc.net 2. 풀이과정 문제를 잘게 나눠봤다. 1. 입력 2. 다익스트라 진행 3. ..
[MSA] Service Discovery와 API gate-way - Spring cloud netflix Ecreka, Spring cloud gate-way 1. 개요 인프런에서 MSA를 배우고 있다. 8만원 정도의 강의인데 만족도가 정말 높다. 이 글은 해당 인프런에 올라온 이도원님의 강의를 보고 공부한 내용을 정리하는 글이다. 다음은 강의 링크이다. Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA) - 인프런 | 강의 Spring framework의 Spring Cloud 제품군을 이용하여 마이크로서비스 애플리케이션을 개발해 보는 과정입니다. Cloud Native Application으로써의 Spring Cloud를 어떻게 사용하는지, 구성을 어떻게 하는지에 대해 www.inflearn.com 멋쟁이사자처럼이라는 동아리에서 공부하면서 프로젝트가 엄청 많아졌고 이를 하나의 로그인 서버로 관리하고 싶다는 생각으로 MSA를 공부하게 되었다..