전체 글 51

금융 FEP 시스템에 Kafka를 도입한 이유: 고성능 저장과 병렬 처리의 미학

안녕하세요! 오늘은 금융권 FEP(Front End Processor) 시스템 마이그레이션 중 Kafka를 도입하며 얻은 기술적 이점과 아키텍처 설계에 대해 공유하고자 합니다. 단순히 유행하는 기술을 쓰는 것이 아니라, 왜 '카프카여야만 했는지' 그 본질적인 이유를 다뤄보겠습니다.1. 디스크 기반인데 메모리만큼 빠르다? (Storage & Speed)카프카는 데이터를 디스크에 저장합니다. 이는 데이터가 들어오는 즉시 **안전하게 영구 저장(Persistence)**된다는 뜻이며, 사실상 가벼운 DB 역할을 겸합니다."디스크면 느린 거 아냐?"라고 할 수 있지만, 카프카는 순차적 I/O(Sequential Write) 방식을 채택해 탐색 시간을 없앴습니다. 여기에 OS의 페이지 캐시를 적극 활용하여, 디스..

카테고리 없음 2026.02.19

[Backend] 고성능 API 게이트웨이의 네트워크 최적화 전략

1. Ingress를 활용한 Direct Pod Access일반적인 쿠버네티스 서비스(ClusterIP)는 커널의 iptables를 거치는 추가 홉이 발생합니다. 지연시간(Latency)에 민감한 시스템에서는 이 단계를 생략하기 위해 Ingress Controller 레벨에서 최적화를 진행합니다.동작 방식: 인그레스가 실시간으로 파드의 엔드포인트(Endpoints)를 감시하고 있다가, 서비스 VIP를 거치지 않고 실제 파드 IP로 직접 요청을 전달합니다.핵심 이점:네트워크 홉(Hop) 감소로 인한 지연 시간 단축iptables 부하 분산의 한계를 넘어선 정교한 로드밸런싱 가능2. 데이터 인터페이스: Binary Struct → JSON 변환백엔드 엔진과 통신할 때는 성능을 위해 **C/C++ 구조체(Bi..

카테고리 없음 2026.02.12

[K8s] 인그레스 컨트롤러(Ingress Controller) 내부 동작 원리 정리

쿠버네티스 환경에서 외부 요청이 들어와 실제 애플리케이션 파드(Pod)에 도달하기까지, 그 보이지 않는 네트워크의 여정을 7단계로 정리합니다.1. 관문: NodePort 서비스와 iptables의 가로채기사용자가 노드의 특정 포트(NodePort)로 접속하면, 리눅스 커널의 iptables가 PREROUTING 단계에서 이 패킷을 가로챕니다. kube-proxy가 관리하는 규칙에 따라 패킷의 목적지 주소가 인그레스 컨트롤러 파드의 IP로 변환(DNAT)되어 전달됩니다.2. 분석: L7 영역에서의 목적지 매핑인그레스 컨트롤러 파드에 도착한 패킷은 L7(HTTP) 단계에서 분석됩니다. 컨트롤러는 HTTP 헤더의 Host와 Path를 확인하여, 이 요청을 어떤 내부 서비스(Service)로 보내야 할지 결정(..

카테고리 없음 2026.02.12