我做了一个脚本bash以执行多个"卷曲"操作。我注意到,当我通过脚本或直接在控制台中执行相同的卷曲命令时会有很大的区别。
execution time for curl through bash script: 56 sec
execution time for curl directly from console (same command): 1 sec
我的脚本中是否有错误(例如,命令的写作方式(?这里我的bash脚本:
NUM_USER=0
NUM_RUNS=0
while [ $NUM_RUNS -le 0 ]
do
while [ $NUM_USER -le 2 ]
do
sleep 0.5
start_time=`date +%s`
curl --proxy http://10.0.20.89:8080 --proxy-negotiate http://10.0.3.50 -u : --negotiate > /dev/null 2>&1
end_time=`date +%s`
echo execution time was `expr $end_time - $start_time` s
NUM_USER=`expr $NUM_USER + 1`
sleep 30
done
NUM_RUNS=`expr $NUM_RUNS + 1`
done
在两种情况下都找到了对数据包进行TCPDUMP的答案。总而言之,使用脚本,执行DNS来解析地址(不需要(,这会导致延迟。直接通过控制台不存在这些DNS请求。最后,命令的结果相同。