您的位置:首页 > 运维架构 > 反向代理

代理服务器升级 squid 3.2.0.5

2012-11-17 19:10 239 查看
从官网下载安装包,注意,并非STABLE稳定版。

squid版本是3.2.0.5

解压缩tar zxvf squid.3.2.0.5.tar.gz

安装配置参数:

./configure --prefix=/squid --enable-gnuregex --enable-async-io=80 --enable-cache-digests --enable-err-language="zh-cn" --enable-default-err-language="zh-cn" --enable-epoll --disable-internal-dns --with_filedescriptors=20480 --enable-kill-parent-hack

(附原来2.6版的:./configure --prefix=/squid --enable-gnuregex --enable-async-io=80 --enable-cache-digests --enable-err-language="Simplify_Chinese" --enable-default-err-language="Simplify_Chinese" --enable-poll --enable-underscore --enable-internal-dns)

解释:(主要针对有颜色的部分进行解释,蓝色的文字是我的想法)

--enable-async-io=80 这个主要是设置async模式来运行squid,我的理解是设置用线程来运行squid,如果服务器配置很不错,有1G以上内存,cpu使用SMP的方式的话可以考虑设成160或者更高。如果服务器比较糟糕就根据实际情况设了。另外此项还另cache文件支持aufs。80这个值是根据160的配置情况自己确定的。

--enable-epoll LINUX2.6内核中提高I/O性能的新方法。

//--enable-poll 应启用Poll()函数而不是select()函数,通常而言poll(轮询)比 select要好,但configure(脚本程序)已知Poll在某些平台下失效, 若你认为你比configure编译配置脚本程序要聪明的话,可以用这个选项启用Poll。总之就是用这个可以提升性能就是啦。没有看得很明白,但是我自己感觉是不是epoll更先进一点。反正我用epoll取代了poll。

百度百科上这么说:

epoll是Linux内核为处理大批量句柄而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。
具体页面:http://baike.baidu.com/view/1385104.htm

--disable-internal-dns Squid代理服务器在程序内部实现DNS解析,不会检查/etc/hosts文件,直接根据/etc/resolv.conf中的DNS服务器。我的实践:1、配置参数中dns_children 必须要依赖于disable-internal-dns。2、默认是检查/etc/hosts文件的。默认值是hosts_file /etc/hosts。如果要不检查,必须显示指定hosts_file none。

--with_filedescriptors=20480 增加并发是同时打开文件的文件描述符数量,默认是1024,一般不够。会在cache_log中形成WARNING: your cache is running out of the filedescriptors!的警告信息。另外我的实践:必须在配置文件中显示指定max_filedescriptors 20480,前后两个值并不一定要相等,前面是编译时设定的最大值,后面配置文件中的值不大于该值即可。

--enable-kill-parent-hack 关掉suqid的时候,要不要连同父进程一起关掉,这个当然要啦。当然要,就要吧。以前发生过关闭SQUID不正常,无法删除pid文件什么的,可能是和这个选项有关。(2.7也支持本选项)

--enable-underscore 在3.0里不再需要也不再支持这个安装选项(2.7也不支持了)。在配置文件中有allow_underscore这个选项。默认是允许域名中支持下划线了。

--enable-err-language="zh-cn" --enable-default-err-language="zh-cn" 原来是--enable-err-language="Simplify_Chinese" --enable-default-err-language="Simplify_Chinese"

好吧,暂时这样,安装后正常。

make

make install
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: