Apache Kafka (2) - 설치
·
Infra/Kafka
Apache Kafka Series - Learn Apache Kafka for Beginners v3를 수강하며 기록한 내용입니다. [MAC M3 기준으로 설치를 진행하였습니다]Condukor 설치카프카 관리 툴(시각화, 모니터링)무료 버전은 개인/학업용으로만 사용 가능설치https://conduktor.io/get-startedcurl -L https://releases.conduktor.io/quick-start -o docker-compose.yml && docker compose upKafka 설치Zookeeper이 포함된 버전brew를 사용하여 설치brew install kafkakafka의 위치는 /opt/homebrew/bin 가 된다.Zookeeper 시작/opt/homebrew/bin..
Apache Kafka (1)
·
Infra/Kafka
Apache Kafka Series - Learn Apache Kafka for Beginners v3를 수강하며 기록한 내용입니다. 도입 이유소스 시스템, 타켓 시스템이 확장됨에 따라 중재 시스템의 필요도가 높아짐장점오픈소스 프로젝트좋은 성능을 보여줌내결함성시스템 간 결합도를 낮출 수 있다.사용처메시징활동 추적메트릭, 로그 수집Topics특정 데이터의 스트림제약 없는 테이블과 같다이름으로 토픽을 선정함어느 종류의 메시지라도 괜찮다연속된 메시지는 "Stream"이라 칭함쿼리는 할 수 없고, Producer가 쓰면(publish), Consumer가 읽을 수 있다.Partition토픽은 파티션으로 나뉜다.파티션에 데이터를 쓸 수록 Offset(index와 유사)이 증가파티션에 쓰인 데이터는 불변이며, a..
Spring Cloud Config
·
Spring
멀티 레포 프로젝트라면 공통된 설정 파일이 여러 군데 분포되어, 관리가 어려워 질 수 밖에 없다.설정 관리에 곤란함을 겪어 본 적이 있어 이를 개선하기 위해 Spring Cloud Config를 사용해 보았다.참고 공식 문서 : https://docs.spring.io/spring-cloud-config/docs/current/reference/html/ Spring Cloud ConfigSpring Cloud Config provides server-side and client-side support for externalized configuration in a distributed system. With the Config Server, you have a central place to manage..
자바/스프링 개발자를 위한 실용주의 프로그래밍
·
Book
https://product.kyobobook.co.kr/detail/S000213447953 자바/스프링 개발자를 위한 실용주의 프로그래밍 | 김우근 - 교보문고자바/스프링 개발자를 위한 실용주의 프로그래밍 | 소프트웨어 개발을 잘하고 싶다면 ‘개발’ 공부를 해야 합니다! 자바 개발자가 코틀린 같은 신생 언어를 다룰 수 있게 된다고 해서 개발을product.kyobobook.co.kr[감상]예시가 명료해서 술술 읽히는 책이었다. 마치 선배 개발자와 커피챗을 한 기분이 들었다. 종이책을 소장하는 것을 좋아하는 편이라 사비로 책을 구매했는데, 후회 없는 선택이었다👍!다른 서적(ex. DDD, Clean Architecture)과 저자의 경험을 기반으로 직관적이고 좋은 사례를 많이 포함하고 있어 스스로를 ..
[프로그래머스] 12904 - 가장 긴 팰린드롬 (Java)
·
Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/12904문제 파악어려운 점타임아웃을 해결하기 위해 노력했다 😅문자열을 순회하며 주어진 문자열의 펠린드롭 여부를 모두 조사하게 되면... 🔥Timeout🔥펠린드롭인지 조사할 때 최적화를 덜 해서 그런지 모르겠지만,substring을 통해 문자열을 추출하고, 아래와 같이 구현하면 채점 시 시간이 초과된다. for (int from = 0; from boolean isPalindrome(String s) { int len = s.length(); if (len == 1) { return true; } for (int i = 0; i   위 구현 방법 대신 이차원 배열..
[프로그래머스] 161988 - 연속 펄스 부분
·
Algorithm
https://school.programmers.co.kr/learn/courses/30/lessons/161988문제 파악어려운 점변수 type 신경쓰기 (int, long)DP 의미(?) 유지하기DP를 업데이트 해 나가면서 이것 저것 덧붙이려는 자신을 볼 수 있다.일관성을 유지하도록 하자풀이2차원 DP(int[][] DP)로 해결DP에서의 더해주고 빼는 행위를 0번째 열, 1번째 열에 저장하여 구현하면 편할 듯 했다.[구현 순서]초항 초기화(N-1번째 값)N-1번째 부터 0번째에서 순서대로 memorization을 진행 DP[i] 데이터를 업데이트하는 방법은 다음과 같다.주어진 수(sequence[i])에 -를 곱하는 경우(=펄스 부분 수열에서 -1)를 DP[i][0]에 업데이트주어진 수(seque..