SQUID与ATS (Apache Traffic Server) 压力测试
一.测试环境
1.CPU:双核 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz
2.内存:2G
3.系统版本:CentOS release 6.2 (2.6.32-220.el6.x86_64)
4.磁盘读写速度:disk reads: 308 MB in 3.01 seconds = 102.28 MB/sec
二.软件版本
1.SQUID :squid-3.0.STABLE18
2.ATS : trafficserver-3.3.0-dev.tar.bz2
3.Ab : Version 2.3
注:
1.由于压力测试命令SQUID ATS服务在一台机器上,测试得出的数值偏小,测试总连接数都为20000,并发数逐步增加。
2.echo 10 > /proc/sys/net/ipv4/tcp_fin_timeout 减少大量的TIMEOUT回收时间,否则影响测试结果
3.ulimit -SHn 655350 增加文件描述符限制
4.SQUID缓存目录建立在了/dev/shm/cache下 mount –bind /cache /dev/shm/cache
三.测试结果
1.测试分为两种情况:
1)1.6K 在小的图片文件
2)771K 的aac音频文件
2. ATS 采用了EPOLL,KQUEUE 的异步IO框架,比较早的select模式在大并发量的情况下优势显著,图中可以看出各项指标均比SQUID 优秀很多。
3. SQUID在处理小文件时,命中率不是很稳定,而在处理大文件里命中率接近100%
4. 在测试中,ATS比SQUID连接处理所需的时间少很多,同时每秒处理请求数翻倍。
5. 在本机与其它机器使用 –header=” Host: www.xxx.com” ,–H “Host: www.xxx.com”,命令测试时,ATS与SQUID穿透没有问题,查看日志TCP_HIT,MEM_HIT,均有带www.xxx.com的头信息连接命中。
1.6K 在小的图片文件
771K 的aac音频文件,由于压力测试命令 SQUID ATS服务在一台机器上,测试得出的数值偏小,(测试机同时建立并处理压力测试连接)SQUID并在并发为 2500的时候,没有了处理能力,机器反应缓慢,停止了测试。