麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Linux Shell > 正文

獲取站點的各類響應時間(dns解析時間,響應時間,傳輸時間)

2020-07-27 19:17:55
字體:
來源:轉載
供稿:網友

有時候為了測試網絡情況,需要返回每個階段的耗時時間,比如DNS解析耗時,建立連接所消耗的時間,從建立連接到準備傳輸所使用的時間,從建立連接到傳輸開始所使用的時間,整個過程耗時,下載的數據量,下載速度,上傳數據量,上傳速度等等。下面的腳本獲取以上信息:

CURL的資料參見: http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html

復制代碼 代碼如下:

###################################
### author: www.ttlsa.com   ###
### QQ群: 39514058     ###
### E-mail: [email protected]  ###
###################################
use strict;
use Data::Dumper;
use WWW::Curl::Easy;

if(!@ARGV){
 print "Usaging: $0 url/n";
 print "For example: $0 www.ttlsa.com/n";
 exit;
}

my $curl = new WWW::Curl::Easy;
open my $response_body,">/dev/null";
$curl->setopt(CURLOPT_HEADER,1);
$curl->setopt(CURLOPT_URL, $ARGV[0]);
$curl->setopt(CURLOPT_WRITEDATA,/$response_body);
$curl->perform;
my $err = $curl->errbuf;
if(!$err){
 my $st = &getTime;
 my $http_code = $curl->getinfo(CURLINFO_RESPONSE_CODE);
 my $http_dns_time = $curl->getinfo(CURLINFO_NAMELOOKUP_TIME);
 my $http_conn_time = $curl->getinfo(CURLINFO_CONNECT_TIME);
 #my $http_APP_time = $curl->getinfo(CURLINFO_APPCONNECT_TIME);
 my $http_PRE_TRAN_time = $curl->getinfo(CURLINFO_PRETRANSFER_TIME);
 my $http_START_TRAN_time = $curl->getinfo(CURLINFO_STARTTRANSFER_TIME);
 my $http_TOTAL_time = $curl->getinfo(CURLINFO_TOTAL_TIME);
 my $http_SIZE_DOWN = $curl->getinfo(CURLINFO_SIZE_DOWNLOAD);
 my $http_SPEED_DOWN = $curl->getinfo(CURLINFO_SPEED_DOWNLOAD);

 printf "local_time: %s, http_code: %d, dns_time: %.3fms, conn_time: %.3fms, pre_tran_time: %.3fms, start_tran_time: %.3fms, total_time: %.3fms, size_download: %dB, speed_download: %dB/s",($st,$http_code,$http_dns_time,$http_conn_time,$http_PRE_TRAN_time,$http_START_TRAN_time,$http_TOTAL_time,$http_SIZE_DOWN,$http_SPEED_DOWN);
 write;

 format STDOUT_TOP=
 站點各類響應時間明細-@||
 $%
 =========================
 +---------------------+------+-------------+--------------+--------------------------+------------------------+-------------+-----------+------------+
 | 本地時間 | 狀態 | DNS解析時間 | 建立連接時間 | 從建立連接到準備傳輸時間 |從建立連接到開始傳輸時間| 整個過程時間| 下載數據量|平均下載速度|
 +---------------------+------+-------------+--------------+--------------------------+------------------------+-------------+-----------+------------+
 .

 format STDOUT=
 |@<<<<<<<<<<<<<<<<<<<<| @<<<<| @<<<<<<<<<<<| @<<<<<<<<<<<<| @<<<<<<<<<<<<<<<<<<<<<<<<| @<<<<<<<<<<<<<<<<<<<<<<| @<<<<<<<<<<<| @<<<<<<<<<| @<<<<<<<<<<|
 $st,$http_code,$http_dns_time."ms",$http_conn_time."ms",$http_PRE_TRAN_time."ms",$http_START_TRAN_time."ms",$http_TOTAL_time."ms",$http_SIZE_DOWN."B",$http_SPEED_DOWN."B/s"
 +---------------------+------+-------------+--------------+--------------------------+------------------------+--------------+----------+------------+
 .
}else{
 print "Error: $err/n";
}

sub getTime()
{
 my @time=(localtime)[5,4,3,2,1,0];
 $time[0]+=1900;
 $time[1]+=1;
 return sprintf("%04u-%02u-%02u %02u:%02u:%02u",@time);
}





shell命令下也有相同的命令如下所示:

復制代碼 代碼如下:

# curl -o /dev/null -s -w %{http_code}:%{http_connect}:%{time_namelookup}:%{time_connect}:%{time_pretransfer}:%{time_starttransfer}:%{time_total}:%{size_download}:%{speed_download} www.ttlsa.com


不解釋了,具體參見 man curl

使用 cURL 獲取站點的各類響應時間 主站蜘蛛池模板: 黄视频网站免费观看 | 久久精品久久精品国产大片 | 国产papa| 精品一区二区6 | 国产99久久久国产精品 | 黑人一级片视频 | 一级黄色国产视频 | 免费午夜视频 | 国产一区毛片 | 国产美女做爰免费视 | 欧美日韩中文字幕在线视频 | 国产精品一区二区手机在线观看 | 欧美色视频免费 | 亚洲成人欧美在线 | 亚洲人片在线观看 | 操碰视频在线观看 | 成人在线国产 | 久久在线精品视频 | 色av综合在线 | 特色一级黄色片 | 最新av在线免费观看 | 桥本有菜免费av一区二区三区 | 国产在线一级视频 | 欧美精品一区自拍a毛片在线视频 | 久久国产精品电影 | 精品在线观看一区二区 | 免费放黄网站在线播放 | 操操电影 | 国产亚洲精品综合一区91555 | 天天看夜夜爽 | 99久久精品免费 | av久草| 久久国产综合视频 | 日韩视频区 | 国产美女一区二区在线观看 | 日韩理论电影网 | 看免费黄色大片 | 亚洲码无人客一区二区三区 | 日本欧美一区二区三区在线播 | 色婷婷久久一区二区 | 国产自91精品一区二区 |