1.每G的磁盘缓冲.约使用32M的内存,具体大小决定于系统体系结构以及object大小. 2.squid使用临时端口对每个连入链接进行服务,所以当服务器负载比较大时,需要对端口数进行优化
echo
"
1024 40000
"
> /
proc
/
sys
/
net
/
ipv4
/
ip_local_port_range
3.日志文件路径. 日志分为cache.log,记录squid状态和调试信息 access.log文,记录对squid发起的每个客户请求 store.log,记录进入和离开缓存的每个目标的记录
cache_log
/
squid
/
logs
/
cache
.
log
cache_access_log
/
squid
/
logs
/
access
.
log
cache_store_log
/
squid
/
logs
/
store
.
log
当需要极端性能的时候,可以将日志记录取消
cache_log
/
dev
/
null
cache_access_log
/
squid
/
logs
/
access
.
log
cache_store_log
none
4.visible_hostname 我们知道没有指定可见主机名,squid将无法启动 其原因是squid在提供服务时,会把主机头插入http via以及x-cache头部 提供用户更详细的信息.而且将会把主机名使用在检测转发环路中 5.日志滚动
squid
-
k
rotate
6.no_cache 此项用于指定内容是否会被squid缓存.由于此项使用no.在语意上会造成一定的混淆 no_cache allow 是允许指定内容进行缓冲 no_cache deny 是让指定目标不被缓存 7.L1以及L2缓冲 squid存储方式ufs,aufs,和diskd中,会使用L1,L2级目录 L1和L2参数指定了第一级和第二级目录的数量,默认的是16和256 如果针对特定的缓冲对象数量进行服务 则可以通过L1,L2参数的调整,使得每个L2目录下的文件数量保持在一个合理值之内 8.maximum_object_size 如果对象包含Content-Length头部 则SQUID在直接比较两个值之后做出缓冲与否的判断 否则将会在将对象存放在本地磁盘之后再对比文件大小 9.cache_dir写入选择算法 Squid有2个cache_dir选择算法。默认的算法叫做lease-load;替代的算法是round-robin。 least- load算法,就如其名字的意义一样,它选择当前工作负载最小的cache目录。负载概念依赖于存储机制。对aufs,coss和diskd机制来说,负载与挂起操作的数量有关。对ufs来说,负载是不变的。在cache_dir负载相等的情况下,该算法使用自由空间和最大目标大小作为附加选择条件。 round-robin算法也使用负载作为衡量标准。它选择某个负载小于100%的cache目录,当然,该目录里的存储目标没有超出大小限制,并且不是只读的。 10.删除缓存对象
squidclient
-
r
http
:
//www.lrrr.org/junk >/tmp/foo
11.删除个别对象
squidclient
-
m
PURGE
http
:
//www.lrrr.org/junk
12.删除一组对象
awk
'
{print $7}
'
/
usr
/
local
/
squid
/
var
/
logs
/
access
.
log
/ |
grep
www
.
example
.
com
/ |
xargs
-
n
1
squidclient
-
m
PURGE
13.删除全部对象 首先必须确认squid没有在运行
echo
''
> /
usr
/
local
/
squid
/
var
/
cache
/
swap
.
state
14.refresh_pattern refresh_pattern规则仅仅应用到没有明确过时期限的响应。原始服务器能使用Expires头部,或者Cache-Control:max-age指令来指定过时期限。
refresh_pattern
-
i
/.
htm
$
0
20
%
1440
15.文件系统优化 设置noatime 设置async 16.squid堆叠 通常把一组互相转发请求的cache(或代理)叫做cache堆叠。把cache堆叠的成员叫做邻居或对等伙伴 邻居cache有2种关系:父子或兄弟。从拓扑上看,父cache在堆叠里位于顶层,而兄弟cache位于同一层。两者真正的不同在于,父cache能为子cache转发cache丢失,然而兄弟cache之间不允许转发cache丢失。 17.HTCP与ICP 使用HTCP相对于ICP的主要优势在于更少的假命中。HTCP有更少的假命中,因为查询消息包含了完整的HTTP请求头部,包含了来自客户端的任何 Cache-Control要求。使用HTCP的主要不足在于HTCP查询更大,要求更多的CPU来处理产生和解析消息。测量显示,HTCP查询大约是 ICP查询的6倍大,这归咎于HTTP请求头部的存在。然而,squid的HTCP响应典型的比ICP响应小。 18.cache_peer_domain中域名的差异 如果是.test.com 则匹配test.com以及所有*.test.com 如果是test.com 则只匹配test.com 19.squid缓冲deflate压缩内容 squid 2.6之后对http/1.1的支持增强.支持ETAG以及Vary. 这样就能够对deflate压缩后的文件进行缓冲 cache_vary on |