今天对我的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
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow LanSrc
http_access allow LanDst
http_access allow LanDstDM
http_access deny all
#base
visible_hostname www.111cn.net
cache_mgr rocdk890@gmail.com
cache_effective_user squid
cache_effective_group squid
error_directory /usr/local/squid/share/errors/Simplify_Chinese
icon_directory /usr/local/squid/share/icons
mime_table /usr/local/squid/etc/mime.conf
cache_replacement_policy lru
#cache_dir
cache_dir aufs /var/cache1 32768 64 64
cache_dir aufs /var/cache2 32768 64 64
cache_mem 2048 MB
max_open_disk_fds 0
#maximum_object_size 512 KB
#maximum_object_size_in_memory 256 KB
maximum_object_size 20 MB
maximum_object_size_in_memory 8 MB
#keepalived
client_persistent_connections off
server_persistent_connections on
#persistent_request_timeout 60 seconds
#memory_pools on
#memory_pools_limit 64 MB
forwarded_for on
log_icp_queries off
via off
httpd_suppress_version_string off
ie_refresh off
tcp_recv_bufsize 32 KB
#acl webservices rep_header Server -i ^linuxtoneWS ^Apache ^nginx
#broken_vary_encoding allow webservices
#hidden the squid header
#reply_header_access Server deny all
#reply_header_access X-Cache deny all
#reply_header_access Warning de(www.111cn.net)ny all
#reply_header_access Expires deny all
#reply_header_access Cache-Control deny all
#reply_header_access age deny all
#reply_header_access All deny all
ipcache_size 1024
ipcache_low 90
ipcache_high 95
memory_replacement_policy lru
hosts_file /etc/hosts
request_header_max_size 128 KB
#deny cache
hierarchy_stoplist cgi-bin ? .php
acl QUERY urlpath_regex cgi-bin? .php
cache deny QUERY
#request_body_max_size 0 KB
refresh_pattern ^ftp: 60 20% 10080
refresh_pattern ^gopher: 60 0% 1440
refresh_pattern . 0 20% 1440
refresh_pattern -i .css$ 360 50% 2880 reload-into-ims
refresh_pattern -i .js$ 1440 50% 2880 reload-into-ims
refresh_pattern -i .html$ 720 50% 1440 reload-into-ims
refresh_pattern -i .jpg$ 1440 90% 2880 ignore-reload
refresh_pattern -i .gif$ 1440 90% 2880 ignore-reload
refresh_pattern -i .swf$ 1440 90% 2880 ignore-reload
refresh_pattern -i .jpg$ 1440 50% 2880 ignore-reload
refresh_pattern -i .png$ 1440 50% 2880 ignore-reload
refresh_pattern -i .bmp$ 1440 50% 2880 ignore-reload
refresh_pattern -i .doc$ 1440 50% 2880 ignore-reload
refresh_pattern -i .ppt$ 1440 50% 2880 ignore-reload
refresh_pattern -i .xls$ 1440 50% 2880 ignore-reload
refresh_pattern -i .pdf$ 1440 50% 2880 ignore-reload
refresh_pattern -i .rar$ 1440 50% 2880 ignore-reload
refresh_pattern -i .zip$ 1440 50% 2880 ignore-reload
refresh_pattern -i .txt$ 1440 50% 2880 ignore-reload
quick_abort_min 20 KB
quick_abort_max 20 KB
quick_abort_pct 95
connect_timeout 1 minute
negative_ttl 0 minutes
read_timeout 30 seconds
pconn_timeout 120 seconds
shutdown_lifetime 5 seconds
strip_query_terms off
#snmp
#snmp_port 3401
#acl snmppublic snmp_orgmunity snsimg
#snmp_access allow snmppublic localhost
#snmp_access deny all
icp_port 0
# logfile
emulate_httpd_log on
#logformat combined %{X-Forwarded-For}>h %ui %un [%tl] “%rm %ru HTTP/%rv” %Hs %<st “%{Referer}>h” “%{User-Agent}>h” %Ss:%Sh
#access_log none
#access_log /data/logs/access.log combined
logformat squid %ts.%03tu %6tr %>a %Ss/%03Hs %<st %rm %ru %un %Sh/%<A %mt
access_log /var/log/squid/access.log squid
#cache_store_log /var/log/squid/store.log
cache_store_log /dev/null
cache_log /var/log/squid/cache.log
logfile_rotate 12
# MISCELLANEOUS
store_objects_per_bucket 15
client_db off
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
/usr/local/squid/sbin/squid -D
如果大家不喜欢这样的启动方式,可以自己去找个squid的启动脚本,这里就不放出了.当squid运行起来了之后,大家可以使用下面这个命令来查看命中率:
代码如下 复制代码
/usr/local/squid/bin/squidclient -p 80 mgr:info
好了,具体其他squid的使用命令就只能你们自己去搜了,就到这里了.
from:
http://www.111cn.net/sys/linux/67933.htm
分享到:
相关推荐
linux中squid3(高命中率)缓存服务器配置.docx
suqid 缓存服务器整理的相关内容,可以参考的。适合于centos7系统的
squid缓存服务器的配置,一般运营商所使用的代理服务器
利用Linux和Squid建立缓存代理服务器的优化方案研究.pdf
Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid 连接所申请网站并请求该...
主要介绍了squid3缓存服务器编译安装和高命中率配置示例,本文讲解了下载squid、编译安装squid、配置squid等内容,需要的朋友可以参考下
NULL 博文链接:https://baobeituping.iteye.com/blog/1331539
利用Squid配置Linux下代理服务器的说明文档,并结合一个示例说明
Linux全攻略--squid服务器配置与管理[参照].pdf
详细的linux下squid 的安装,配置,卸载过程,详细的命令,常见问题解决。
目录 一、确保Linux 系统中装有NET-SNMP 协议 1 1.Net-snmp 获取与安装 1 2.Net-snmp 的配置 1 3.Net-snmp 常用命令 2 二、Squid 3 1.检查linux是否存在squid老版本 3 ...9.Squid命中率分析 11 10.Squid 排错 12
基于linux的Squid代理服务器的架设分析.doc
文档为squid缓存服务的配置文档,系统为CentOS部署,本人自己部署成功后整理的文档,绝对清晰。
Squid与Linux下其它的代理软件如Apache、Socks、TIS FWTK和delegate相比,下载安装简单,配置简单灵活,支持缓存和多种协议。用ipchains+Squid的解决方案,就可以获得通过缓存高性 能的同时能够无缝的访问Internet。...
Squid是一个高性能的代理缓冲服务器,也许你已经用过Windows平台下的WinGate,MS Proxy Server等功能类似的产品。Squid是一个应用级代理,在保证客户端主机和服务器主机网络连通后,需要客户端软件做相应的设置后...
基于Linux的Squid代理服务器配置.doc
Squid缓存代理服务器的安装与配置(普通代理 透明代理 反向代理)
确保Linux 系统中装有NET-SNMP 协议 1 1.Net-snmp 获取与安装 2.Net-snmp 的配置 3.Net-snmp 常用命令 Squid 1.检查linux是否存在squid老版本 2.Squid 获取与安装 ...9.Squid命中率分析 10.Squid 排错
通过squid访问日志access.log 统计squid 命中率