linux中squid3(高命中率)缓存服务器配置
08-19
quid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器。Squid有广泛的用途,从作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid主要设计用于在Unix一类系统运行,下面我们来看看squid3(高命中率)缓存服务器配置教程。
今天对我的varnish进行了下小小的压力测试,40s里的8000并发,没有失败一个,估计还可以承受更大的并发,先不说varnish了,我最近找到个命中率很高的squid的配置文件,当然是squid3.0的配置文件,有需要的可以copy回去自己改.
系统:centos 5.x
需要的软件:squid-3.0.STABLE25.tar.gz
1.下载squid
代码如下 | |
wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE25.tar.gz tar zxf squid-3.0.STABLE25.tar.gz && cd squid-3.0.STABLE25 |
2.编译squid
代码如下 | |
./configure --prefix=/usr/local/squid --enable-async-io=100 --with-pthreads --enable-storeio="aufs,diskd,ufs" --enable-removal-policies="heap,lru" --enable-icmp --enable-delay-pools --enable-useragent-log --enable-referer-log --enable-kill-parent-hack --enable-arp-acl --enable-default-err-language=Simplify_Chinese --enable-err-languages="Simplify_Chinese English" --disable-poll --disable-wccp --disable-wccpv2 --disable-ident-lookups --disable-internal-dns --enable-basic-auth-helpers="NCSA" --enable-stacktrace --with-large-files --disable-mempools --with-filedescriptors=65536 --enable-ssl --enable-x-accelerator-var make make install make install-pinger |
3.配置squid
代码如下 | |
cp /usr/local/squid/etc/squid.conf /usr/local/squid/etc/squid.conf.old >/usr/local/squid/etc/squid.conf ln -s /usr/local/squid/etc/squid.conf /etc/squid.conf |
squid.conf里的内容:
代码如下 | |
#accel listen port http_port 80 accel vhost vport #accel domain cache_peer xx.xx.xx.xx parent 80 0 no-query originserver no-digest name=a cache_peer_domain a www.111cn.net #acl acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 8080 acl LanSrc src all acl LanDst dst all acl LanDstDM dstdomain www.111cn.net acl CONNECT method CONNECT #base error_directory /usr/local/squid/share/errors/Simplify_Chinese cache_replacement_policy lru #keepalived #memory_pools on forwarded_for on via off ie_refresh off #acl webservices rep_header Server -i ^linuxtoneWS ^Apache ^nginx #hidden the squid header ipcache_size 1024 memory_replacement_policy lru hosts_file /etc/hosts #deny cache #request_body_max_size 0 KB refresh_pattern ^ftp: 60 20% 10080 refresh_pattern -i .doc$ 1440 50% 2880 ignore-reload quick_abort_min 20 KB connect_timeout 1 minute #snmp icp_port 0 # logfile # MISCELLANEOUS |
4.创建目录
代码如下 | |
/usr/sbin/groupadd squid /usr/sbin/useradd -g squid squid mkdir -p /var/log/squid chown -R squid:squid /var/log/squid mkdir -p /var/{cache1,cache2} chown -R squid:squid /var/{cache1,cache2} 初始化squid的cache目录 /usr/local/squid/sbin/squid -z 启动squid |
如果大家不喜欢这样的启动方式,可以自己去找个squid的启动脚本,这里就不放出了.当squid运行起来了之后,大家可以使用下面这个命令来查看命中率:
代码如下 | |
/usr/local/squid/bin/squidclient -p 80 mgr:info |
好了,具体其他squid的使用命令就只能你们自己去搜了,就到这里了.