본문 바로가기

전체 글134

[Kafka] 컨슈머 그룹 - 토픽 컨슘 관계(?) 삭제 컨슈머 그룹과 특정 토픽의 구독 관계를 끊고 싶은 경우가 있을 수 있다.unsubscribe(구독 토픽 목록에서 제외) 한다고 컨슘 이력, 관계가 사라지는 것이 아니기 때문에 lag은 계속 쌓이게 된다. 만약 모니터링 도구에서 이를 구별하지 못한다면 lag 이 해소되지 않는 상황이라 판단할 것이고 지속적으로 alert 이 발생하게 된다.1. 컨슈머 그룹 삭제컨슈머 그룹에 속한 멤버를 모두 죽인 뒤 컨슈머 그룹 삭제하는 방법.토픽 메시지를 처리 중이던 컨슈머 그룹은 삭제할 경우 오프셋 날라가서 문제 생길 수 있음 → 되도록 지양하는 것이 좋아보임2. 컨슈머 그룹 토픽 오프셋 삭제컨슈머 그룹에 속한 멤버를 모두 죽이고, 특정 토픽에 대한 오프셋 날리는 방법kafka-consumer-groups \ --.. 2024. 5. 2.
[MySQL] MySQL 성능 개선 - 압축 MySQL 압축 기능에 대해 알아본다. DB 성능 개선 방법DB 성능을 개선하는 방법은 여러가지가 있다. 이번에는 인덱스에 이어 압축에 대해 알아보자.인덱스파티셔닝비싼 장비압축기타아래는 압축 테이블 생성 SQL이다. InnoDB, ROW_FORMAT, KEY_BLOCK_SIZE 와 같은 옵션이 있는데 이 글이 끝나면 이해 될 것이다. CREATE TABLE `log` ( ...) ENGINE=InnoDB AUTO_INCREMENT=159282952 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC KEY_BLOCK_SIZE=8 COMMENT='로그' 복습https://mystudylab.tistory.com/162디스크는 매우 느리다.논리적 저장 단위. 배경지식 1: 압축압축이란?.. 2024. 4. 25.
[Redis] 1장. 마이크로서비스 아키텍처, NoSQL, 레디스 개발자를 위한 레디스 책 공부NoSQL 등장개요소프트웨어의 핵심은 데이터이며, 데이터 저장소는 애플리케이션의 성능과 확장성, 가용성, 신뢰성과 직접적으로 연관을 갖는다.트렌드가 마이크로서비스 아키텍처로 변화하면서 데이터 저장소 특징 역시 다양하게 발전하고 있다.Monolith vs Microserivces모놀리틱 아키텍처단일 모듈로 구성된 아키텍처 (모든 기능이 하나의 서버에 몰려있다)작은 규모에 적합단점하나의 모듈 수정하면 전체 다시 빌드 및 배포 → 빌드 시간 늘어남트래픽, 트랜잭션 요구사항에 유연하게 대처 불가프레임워크, 언어 변경이 전체 애플리케이션에 영향 끼침작은 기능 변경하는 것도 민첩하게 대처하기 어렵다. 업데이트와 릴리즈가 느려짐마이크로서비스 아키텍처.. 2024. 4. 17.
[기획] Data 중심 서비스 개선 개요 서비스는 지속적으로 개선되어야하고 의사결정 기준은 객관적인 지표가 되는 것이 일반적으로 옳다. 데이터를 기반으로 사용자 니즈 혹은 문제를 파악하고 이를 중심으로 서비스를 확장해야한다. AARRR 측정 1. Acquisition GA4 사용자 획득 2. Activation 회원가입 3. Retention 재방문, 재로그인 충성고객 정의 4. Revenue 판매 5. Referral 추천 발생 측정 추천인 등 A/B 테스트 유저는 A or B 어떤 상황에 더 응답하는지 사용자 측정 MAU(Monthly Active Users) 월별 방문 사용자 AMPU (Average Margin Per User) 한 사람이 가져다주는 손익 2024. 4. 14.
[MySQL] MySQL 성능 개선 - 인덱스, 실제 개선 사례 맥락 공유상황4월 인보이스 발행 과정에서 DB에 부하가 발생하고 있는 것을 확인함.AWS Performance Insight 라는 모니터링도구를 통해 문제되는 쿼리를 발견함. (과거 인보이스 조회하는 쿼리)인보이스에 인덱스 추가하여 부하 문제 해결하고 성능 개선하는 이슈를 진행함.결론 (인덱스 적용 후)DB 부하 문제 해결.13분 넘게 걸리던 인보이스 발행 성능을 1분 30초 정도로 개선. 1. 쿼리 성능 저하 원인쿼리 느린 이유 -> 디스크 I/O디스크에서 파일을 가져오는 건 매우 비효율적이고 느린 작업.병목으로 작용하는 디스크 I/O를 개선하기 위해 활용하는 것이 캐시나 인메모리 DB성능 저하 원인 -> 디스크 I/O 부하 증가Block(Page): 데이터.. 2024. 4. 10.
[Elasticsearch] 8. 엘라스틱서치의 내부 동작 상세 개요 데이터 읽기와 쓰기 작업 요청 들어왔을 때 엘라스틱서치 내부가 어떤 단계를 거쳐 동작하는지 살펴본다. 어떻게 요청의 동시성 제어를 하는지? 샤드에 문제가 생겼을 때 어떻게 복구되는지 8.1 엘라스틱서치의 데이터 분산 처리 과정 8.1.1 쓰기 작업 시 엘라스틱서치 동작과 동시성 제어 쓰기 작업의 3단계 1. 조정 단계(coordination stage) 2. 주 샤드 단계(primary stage) 요청을 넘겨받은 이후 수행하는 작업들 in-sync 복제본 마스터 노드가 관리하는 작업을 복제받을 샤드 목록 주 샤드는 in-sync 복제본에 병렬적으로 요청을 넘긴다. 모든 복제본들이 작업을 성공적으로 수행하고 주 샤드에 응답을 돌려주면 주 샤드가 작업 완료 응답을 보낸다. 3. 복제 단계(replic.. 2024. 4. 3.
[DB] Slow query 개선, 인덱스 추가 WIP 인덱스 - 추가적인 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조 인덱스 장점 - 최적화된 인덱스는 조회 속도를 매우 높일 수 있다. 인덱스 주의 - 인덱싱에 필요한 추가 저장 공간이 필요하다. - 결합 인덱스일 경우, 모두 일치해야 인덱스가 동작한다. 고려사항 - 모니터링을 통해 Slow 쿼리를 먼저 분석한다 (e.g. AWS RDS Performance Insight) - 카디널리티가 보통 높으면 좋다. 다만 카디널리티가 높더라도 선택성이 낮으면 지정할만 하다. 2024. 4. 2.
[Kubernetes] Failed to pull image “no matching manifest for linux/arm64/v8 in the manifest list entries 원인도커 이미지가 노드 아키텍처를 지원하지 않아 이미지를 받아올 수 없음 해결 방법1. 멀티 플랫폼 지원platforms 에 플랫폼을 명시한다. 다만 플랫폼 별 이미지를 만들기 때문에 시간이 빌드 시간이 오래걸린다.platforms: linux/amd64, linux/arm64/v8 2. node-select 혹은 affinity 설정  (노드 아키텍처 타입이 여러개일 때)특정 아키텍처 노드에만 Pod이 스케줄링되도록 구성할 수 있다. node-select 예시apiVersion: apps/v1kind: Deploymentmetadata: name: example-deploymentspec: replicas: 3 selector: matchLabels: app: example tem.. 2024. 3. 31.
[Grafana] 그라파나란? 간단한 구성과 실습 Grafana? - 오픈소스 메트릭 데이터 시각화 도구, 메트릭 분석 플랫폼 - 다양한 빅테크 기업에서 시각화 도구로 사용하고 있다. 특징 (ChatGPT) 1. 다양한 데이터 소스 지원 그라파나는 여러 다양한 데이터 소스를 지원합니다. 예를 들어, Prometheus, InfluxDB, Elasticsearch, MySQL, PostgreSQL, Microsoft SQL Server 등 다양한 데이터베이스 및 시계열 데이터베이스와 통합할 수 있습니다. 2. 시각적 대시보드 라파나는 다양한 차트, 그래프, 테이블 등을 이용하여 데이터를 시각적으로 표현할 수 있는 대시보드를 제공합니다. 이를 통해 데이터의 변화 및 추이를 쉽게 파악할 수 있습니다. 3. 경고 및 알림 그라파나는 사용자가 정의한 임계값을 기.. 2024. 3. 27.
[재미] 워터게이트 사건 (언론사상 최대 특종) - 언론사상 최대 특종으로 뽑히는 워터게이트 사건, 우드스타인(우드워드와 번스타인) 듀오, 배리 서스먼 편집장에 의해 보도되었다. (https://zdnet.co.kr/view/?no=20220609150425) - 닉슨 대통령의 재선을 위해 상대 정당 공간에 도청장치를 설치하려는 시도가 있었으며 Bob Woodward와 Carl Bernstein이 이를 보도했다. - 닉슨 대통령은 이 결과로 재선 후 2년 뒤 사임하게 된다. - 우드워드가 취재해오면 번스타인이 퍼즐을 맞추는 식으로 취재가 진행되었다. )https://www.chosun.com/site/data/html_dir/2018/09/07/2018090700253.html) - 비밀 취재원 딥스트로(본명 마크 팰트)의 도움을 받았다. (https.. 2024. 3. 23.