Diki 검색중...
#개념
일반적으로 지연 시간(latency)은 어떤 작업이 시작된 시점부터 결과가 나타날 때까지 걸리는 시간을 의미한지만, IT 분야에서는 데이터가 송수신되는 전체 경로에서 발생하는 시간이라고 볼 수 있다. 지연 시간은 단순한 ‘느림’이라는 감각적 표현을 넘어서, 기술적으로 측정 가능하고 개선 가능한 성능 지표로 간주된다. 특히 네트워크나 시스템 설계에서는 지연이 발생하는 원인을 세분화해 파악하고, 이를 최적화의 대상으로 삼는 것이 중요하다. IT 환경에서는 측정 방식이나 맥락에 따라 지연 시간을 여러 유형으로 나누어 정의하며, 대표적으로 단방향 지연 시간과 종단 간 지연 시간이 있다.지연 시간 종류
- 단방향 지연 시간 (One-way latency): 하나의 데이터 패킷이 출발지에서 목적지까지 도달하는 데 걸리는 시간으로, 전송 지연(transmission latency)이라 불리기도 한다.
- 종단 간 지연 시간 (End-to-End latency): 사용자가 요청을 보낸 시점부터 응답을 완전히 수신할 때까지의 전체 소요 시간으로, 왕복 지연(Round Trip Time, RTT)이라 불리기도 한다.
- DNS 조회(DNS Resolution): 도메인 이름을 IP 주소로 변환하는 데 걸리는 시간
- TCP 연결 수립(TCP Handshake): 클라이언트와 서버 간의 연결을 설정하는 데 걸리는 시간
- TLS 보안 협상(TLS Handshake): 보안 연결을 위한 인증 및 암호화 협상 과정에 걸리는 시간
- 대기 지연(Queuing Delay): 서버 또는 네트워크 장비가 이전 요청을 처리 중이라 요청이 큐에 대기하는 시간
- 전송 지연(Transmission Delay): 요청 데이터를 네트워크를 통해 서버로 전송하는 데 걸리는 시간
- 전파 지연(Propagation Delay): 전기적 신호 또는 광 신호가 전송 매체를 통해 이동하는 데 걸리는 시간
- 서버 처리 시간(Processing Delay): 서버가 요청을 파싱하고, 비즈니스 로직을 실행하는 시간
- 데이터베이스 접근 지연: 쿼리 실행, 인덱싱, 조인, I/O 작업 등에 걸리는 시간
- 응답 전송 및 수신(Response Transmission & Receiving): 서버가 응답을 전송하고 클라이언트가 수신하는 데 걸리는 시간
- 캐싱(Caching): 자주 조회되는 API 응답이나 쿼리 결과를 애플리케이션 또는 게이트웨이 계층에서 캐싱하여 지연을 단축
- 사전 연산(Pre-computation): 실시간 계산이 오래 걸리는 처리 결과나 추천 결과 등을 미리 계산해 저장
- 비동기 처리/병렬 처리: 요청을 블로킹하지 않고 백그라운드에서 처리하거나, 여러 작업을 병렬로 처리하여 응답 속도를 향상
- 데이터 근접성(Data Locality): 데이터가 사용자 또는 엣지(Edge)에 가까울수록 지연이 짧아지기 때문에 CDN, 엣지 컴퓨팅, 지역별 캐시 서버 등을 활용
#관련 용어
클라이언트와 서버 간에 안전한 통신 채널을 설정하기 위한 일련의 프로토콜 교환 과정(공개 키 교환, 인증서 검증, 세션 키 생성 등)
Time-To-Live의 약자로, 캐시된 데이터가 유효한 시간(초 단위)
Content Delivery Network의 약자로, 전 세계에 분산된 캐시 서버를 통해 콘텐츠(정적 자산, 이미지, API 응답 등)를 사용자와 지리적으로 가까운 위치에 제공하는 네트워크 인프라
실시간 스트리밍 데이터 처리를 위한 분산형 데이터 처리 프레임워크
Garbage Collection의 약자로, 사용되지 않는 객체를 자동으로 메모리에서 회수하는 과정
Facebook이 개발한 고성능 키-값 저장소
#직무 연관도
DA | Data Analyst낮음
실시간 대시보드나 API 호출 시 지연 시간이 분석 결과에 영향을 줌
DS | Data Scientist낮음
스트리밍 데이터 기반의 분석을 수행할 경우, 지연 시간은 모델 성능과 직접적으로 연결됨
DE | Data Engineer높음
파이프라인 최적화와 스트리밍 시스템 구축에 핵심 요소로, Kafka나 Airflow 등에서 처리 지연이 발생하면 전체 시스템의 병목 원인이 됨
#사용 사례
지연 시간은 다양한 시스템의 응답 속도를 결정짓는 핵심 지표로, 실시간 데이터 처리, 사용자 인터랙션, 자동화된 의사결정 등에 광범위하게 활용된다. 특히 밀리초 단위의 반응 속도가 중요한 환경에서는 성능 최적화와 안정성을 위해 반드시 고려되어야 한다.
Datadog은 Data Streams Monitoring을 통해 데이터 엔지니어가 Kafka 기반 스트리밍 파이프라인의 엔드투앤드 지연을 시각화하고, 지연 원인을 실시간 탐지 및 대응할 수 있는 솔루션을 제공한다.
#참고 자료
#추천 포스트
© 2024 diki All rights reserved.