{"componentChunkName":"component---src-templates-post-template-jsx","path":"/works/posts/2021-09-24--001","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Eunyoung","subtitle":"작업 기록 블로그","copyright":"© All rights reserved.","author":{"name":"EunYoung","twitter":"#"},"disqusShortname":"","url":"https://ssongey.github.io"}},"markdownRemark":{"id":"69da7649-ac40-5dc6-9362-65af985b0b21","html":"<p>타 서비스 이용중에 API 타임아웃이 빈번하게 발생하여 해당 API 에 대한 응답 소요시간을 CURL 을 이용하여 체크하게 되었다.<br>\n서버 연결 소요시간 및 응답 소요시간을 각각 측정하는 옵션을 사용했다.</p>\n<div class=\"gatsby-highlight\" data-language=\"cmd\"><pre class=\"language-cmd\"><code class=\"language-cmd\">$ curl -sS -w &quot; \\\ntime_connect: %{time_connect} \\\ntime_appconnect: %{time_appconnect} \\\ntime_pretransfer: %{time_pretransfer} \\\ntime_starttransfer: %{time_starttransfer} \\\ntotal_time: %{time_total}\\n&quot; \\\n-k -X POST https://test.com -o /dev/null</code></pre></div>\n<p><span class=\"title__sub2\"><span class=\"text-mark__green\">time_connect</span></span></p>\n<ul>\n<li>tcp 연결하는데 걸리는 시간</li>\n</ul>\n<p><span class=\"title__sub2\"><span class=\"text-mark__green\">time_appconnect</span></span></p>\n<ul>\n<li>ssl handshake 소요 시간</li>\n</ul>\n<p><span class=\"title__sub2\"><span class=\"text-mark__green\">time_pretransfer</span></span></p>\n<ul>\n<li>HTTP인지 HTTPS인지에 따라 time<em>connect 또는 time</em>appconnect와 거의 동일</li>\n<li>이 값의 유일한 목적은 서버가 바이트 전송을 시작하는데 걸린 시간을 계산하기 위함이다</li>\n<li>TTFB를 위한 준비단계로 보면 된다</li>\n</ul>\n<p><span class=\"title__sub2\"><span class=\"text-mark__green\">time_starttransfer</span></span></p>\n<ul>\n<li>서버가 응답을 준비하는데 걸린시간</li>\n<li>TTFB(Time To First Byte)</li>\n<li>클라이언트가 처음으로 byte를 받은 시간이다.</li>\n</ul>\n<br/>\n순서대로 curl이 시작된 이후 <span class=\"text-mark__red\">누적</span>이 된다.<br/>\n따라서 <span class=\"text-mark__red\">time_starttransfer - time_pretransfer</span> 값이 실제 서버 처리 시간으로 볼 수 있다.\n<p>참고<br>\n<a href=\"https://speedtestdemon.com/a-guide-to-curls-performance-metrics-how-to-analyze-a-speed-test-result/\">https://speedtestdemon.com/a-guide-to-curls-performance-metrics-how-to-analyze-a-speed-test-result/</a> <br/>\n<a href=\"https://yfkwon.tistory.com/42#recentEntries\">https://yfkwon.tistory.com/42#recentEntries</a></p>","fields":{"tagSlugs":["/tags/curl/"],"slug":"/works/posts/2021-09-24--001"},"frontmatter":{"title":"[작업로그] CURL 을 이용하여 API 속도 체크","tags":["curl"],"date":"2021-09-24","description":"CURL -w option format"}}},"pageContext":{"slug":"/works/posts/2021-09-24--001"}},"staticQueryHashes":[]}