전체 글131 [K8s] 기본 구조 정리: Cluster, Pod, Deployment, Namespace, Service 0. 개요인프라 관련해 좀 무지한 것 같아서, K8S 공부할 겸 CKAD 자격증 딸 겸 K8S를 공부하는 중이다. 1. Cluster, Node, Pod란? Cluster: Control Plane과 Node들로 구성된 전체 Kubernetes 환경Control Plane은 클러스터의 상태를 관리하고 Pod를 적절한 Node에 배치한다.여러 Node를 사용하면 애플리케이션 부하를 분산하고, 한 Node에 장애가 발생했을 때 다른 Node에서 Pod를 실행할 수 있다.Node: Pod가 실제로 실행되는 물리적 또는 가상의 머신(쿠버네티스가 설치되어 있음)보통 컨테이너(격리된 애플리케이션 실행 환경)를 pod에 넣어 노드에 배치한다. Pod: Kubernetes가 배포하고 관리하는 가장 작은 단위.일반적.. 2026. 7. 20. [Kafka] 면접 결과 기다리다가 멘탈 나갈 것 같아서 시간 때우기 위해 공부하는 카프카 0. 개요시간 때우기 용으로 그동안 궁금했던 Redis Streams가 영향을 받은 카프카에 대해 공부해보고자 한다. '쉬운 코드' 유투브 채널과 카프카 공식 문서 참고했다. https://www.youtube.com/@ezcdhttps://kafka.apache.org/ 1. 카프카란? Apache Kafka is an open-source distributed event streaming platform 여러 대의 컴퓨터를 네트워크로 연결하여 하나의 거대한 시스템처럼 동작하는 환경에서 사용하는 (distributed)sw 시스템에서 발생한 어떤 사실을 나타내는 불변의 데이터를 (event)목적지까지 끊임없이 실시간으로 흐르게 하는 (streaming)플랫폼 (platform) 즉, 카프카를 통.. 2026. 6. 18. [Redis] Multiplexing & Event Loop 0. 개요Redis의 내부 작동 원리에 대해 학습하다 multiplexer와 event loop 개념이 나와서 이에 대해 정리하고자 정리한다. 1. Multiplexing이란? 멀티플렉싱의 어원은 '다중화'로,I/O 관점에서는 '단 하나의 스레드가 수천개의 소켓(file descripter)를 동시에 감시하는 기술'을 의미한다. -> 시스템 자원 효율화ex) epoll, kqueueHTTP 관점에서는 '하나의 통신로를 활용해 여러개의 독립된 신호를 전송하는 기술'을 의미한다. -> 지연시간 단축ex) http 1.1 keep alive, http 2.0 stream I/O Multiplexing의 주요 매커니즘은 다음과 같다. 방식특징알고리즘 복잡도select감시 소켓 수 제한(보통 1024개)이 있고,.. 2026. 1. 22. [DB] MySQL Master-Slave 복제(Replica) 과정과 Binlog란? 0. 개요회사에서 prd 환경에 Master, Slave MYSQL을 사용하고 있어, 해당 과정에 대해 공부해보았다. 1. NCloudhttps://www.ncloud.com/v2/product/database/cloudDbMysql#detail NAVER CLOUD PLATFORMcloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certificationwww.ncloud.comDB에 대한 HA를 보장하기 위해 Master와 Slave, 그리고 Standby Master DB가 있다.Standby Master DB는 Master DB가 죽었을때 Master로 승격된다.. 2026. 1. 16. [Spring] Redis ShedLock 이론과 구현 스케줄러로 API를 요청해 데이터를 받아오고 있었는데, 다중 서버 환경에서 스케줄러가 각 노드마다 개별 동작하여 동일한 API 요청이 서버 대수만큼 중복 발생하는 문제가 있었다. 이로 인해 다음과 같은 현상이 발생했다. 거의 동시에 응답이 왔을 때 redis에 저장되어 있는 응답의 개수가 덮어씌워져(Lost Update) Loki와의 데이터 정합성 문제가 발생API 요청 성공유무를 보여주는 화면 UI에 중복된 상태값이 표시되고, 서버 개수에 따라 관리자에게 보여지는 API 요청 개수가 달라지는 등 부정적인 사용자 경험을 유발외부 서버(PHIS)와 내부 리소스(Redis, Loki)의 불필요한 부하를 초래이러한 멀티 노드 간 중복 작업을 차단하여 파생되는 문제를 방지하기 위해 스케줄러 분산 락 매커니즘(S.. 2026. 1. 16. [Spring] TaskScheduler 이론과 구현 0. 개요외부 API에 보낸 요청의 상태를 모니터링하는 기능을 개발하던 도중, 기존의 polling 방식이 서버에 불필요한 부하를 만들고 있었음을 파악했다. Polling 했던 목적이 클라이언트(관리자)가 스케줄러를 통한 API 요청에 대한 응답이 잘 오고 있는지 확인하기 위함이었다. 요청 이후 30초안에 응답이 오지 않으면 '지연', 50초 안에 응답이 오지 않으면 '초과'임을 클라이언트에게 전달해주어야 했기에 이를 위해 최대한 빠르게 문제 상황을 전달해 주기 위해서는 짧은 주기의 polling이 요구되었다. 하지만, 이벤트 발생 시에만 클라이언트에게 정보를 전달해주면 되었기에 SSE를 고려하게 되었고, 서버 측에서 정해진 특정 시점에만 확인 후 이벤트를 발생시키면 되었기에 방법을 찾아보았다. Task.. 2026. 1. 15. 이전 1 2 3 4 ··· 22 다음