반응형
Curl Time Format과 Chrome의 Timing 비교
Curl Time Format
- DNS 질의 부터 connect, request, response가 완료되기 까지 Curl Time Format 별 순서 도식이다.
- time_namelookup ~ time_total
Chrome Timing
- Chrome의 Timing 예
- Chrome 브라우져에서 진행되는 Queueing, Stalled 과정을 제외하면 DNS Lookup ~ Content Download 까지가 실제 통신 과정이다.
- Timeing을 도식화.
- DNS Lookup = DNS Lookup
- TCP Handshake = Initial connection
- SSL Handshake = SSL
- Wait(requestStart) = Request sent
- Wait(responseStart) = Waiting(TTFB)
- Data Transfer == Content Download
- TTFB
- Time To First Byte 로 response의 첫 byte가 도달한 시간을 말한다.
- 사용하는 어플리케이션의 주요 성능 지표로 사용되며 클라이언트의 요청 + 서버의 처리시간 + 서버의 응답 등을 포함한다.
- TTFB = responseStart - connectEnd
- curl의 경우 TTFB = time_starttransfer - time_appconnect
Curl Time Format과 Chrome Timing의 대응 속성값
Curl Time Format | 설명 | Chrome Timing |
time_namelookup | 목적지 도메인의 dns 조회가 완료된 시간 | DNS Lookup |
time_connect | 목적지와 TCP connect(Handshake)가 완료된 시간 | Initial connection |
time_appconnect | 목적지와 SSL/SSH 등등 connect(handshake)가 완료된 시간 | SSL |
time_pretransfer | 목적지와 파일 전송 시작 시간. request 보내는 시점 | Request sent |
time_starttransfer | TTFB(Time To First Byte). response 의 첫 byte를 read한 시간 | Waiting(TTFB) |
time_total | response가 완료되어 목적지와 finish connect 한 시간. 총 시간 | Content Download |
time_redirect | namelookup부터 time_total 내 모든 과정중 redirect가 발생한 총 시간 |
Curl Time Format을 사용하여 응답시간 측정
응답시간 관련 사이트
https://www.cloudping.info/
- 현재 클라이언트 브라우져에서 AWS region 별로 http ping을 사용하여 TTFB 측정
https://ping.pe/
- 출발지 여러지역에서 지정하는 목적지로 icmp ping을 사용하여 응답시간, 손실율을 측정
Curl Time Format
- -o : output.
- -s : silent or quiet mode. 진행과정을 출력하지 않음.
#!/bin/sh
time_format=`cat <<EOF
DNS Lookup : %{time_namelookup}
TCP HANDSHAKE : %{time_connect}
SSL HANDSHAKE : %{time_appconnect}
Request start : %{time_pretransfer}
Response start : %{time_starttransfer}
Time Total : %{time_total}
Redirect : %{time_redirect}
EOF`
curl -o /dev/null -w "${time_format}" -s https://dynamodb.us-east-1.amazonaws.com/ping
반응형
'시스템 운용툴' 카테고리의 다른 글
[mRemoteNG] SQL server를 이용한 연결정보 로드 및 저장 (0) | 2024.08.08 |
---|---|
서버의 TLS 버전 확인 방법 (0) | 2022.05.12 |
[openssl] openssl을 이용한 SSL 인증서 다루기 (0) | 2021.03.23 |