【转】《Squid 中文权威指南》第1章 译者:彭勇华
本文出处:http://bbs.chinaunix.net/viewthread.php?tid=561395
译者序:
本人在工作中维护着数台Squid 服务器,多次参阅Duane Wessels(他也是Squid 的创始人)的这本书,原书名是"Squid: The Definitive Guide",由O'Reilly 出版。我在业余时间把它翻译成中文,希望对中文Squid 用户有所帮助。对普通的单位上网用户,Squid 可充当代理服务器;而对Sina,NetEase 这样的大型站点,Squid 又充当WEB 加速器。这两个角色它都扮演得异常优秀。窗外繁星点点,开源的世界亦如这星空般美丽,而Squid 是其中耀眼的一颗星。
对本译版有任何问题,请跟我联系,我的Email是:yonghua_peng@yahoo.com.cn 彭勇华
--------------------------------------------------------------------------------------
第一章是Squid 的简介性描述,与技术关联不多,我不准备多翻译。
1.1 Web 缓存
这节里需要明白3个概念:
cache 命中 - 在squid 每次从它的缓存里满足HTTP 请求时发生。cache 命中率,是所有HTTP 请求中命中的比例。Web 缓存典型的cache 命中率在30%到60%之间。另一个相似的度量单位叫做字节命中率,描绘了cache 提供服务的数据容量(字节数)。
cache丢失 - 在squid 不能从它的缓存里满足HTTP 请求时发生。cache 丢失的理由有很多种。最明显的,当squid 第一次接受到对特殊资源的请求时,就是一个cache 丢失。类似的情况是,squid 会清除缓存以释放空间给新对象。另外的可能是资源不可到达。原始服务器会指示cache 怎样处理响应。例如,它会提示数据不能被缓存,或在有限的时间内才被重复使用,等等。
cache确认 - 保证squid 不对用户返回过时数据。在重复使用缓存对象时,squid 经常从原始服务器确认它。假如服务器指示squid 的拷贝仍然有效,数据就发送出去。否则,squid升级它的缓存拷贝,并且转发给客户。
1.2 Squid 的简明历史
对本节感兴趣的读者请阅读英文原文档。
1.3 硬件和操作系统要求
Squid 运行在所有流行的Unix 系统上,也可以在Microsoft Windows 上运行。尽管squid的Windows 支持在不断改进,但也许在Unix 上容易一些。假如你有一个喜欢的操作系统,我建议你使用那个。否则,假如你找人推荐,我很喜欢FreeBSD。
squid 对硬件要求不算高。内存是最重要的资源。内存短缺会严重影响性能。磁盘空间也是另一个重要因素。更多的磁盘空间意味着更多的缓存目标和更高的命中率。快速的磁盘和驱动器也是有利的。如果你舍得花钱,SCSI 磁盘比ATA 的执行性能好。当然快速的CPU也是好的,但它并不是提高性能的关键因素。
因为squid 对每个缓存响应使用少数内存,因此在磁盘空间和内存要求之间有一定联系。基本规则是,每G 磁盘空间需要32M内存。这样,512M 内存的系统,能支持16G 的磁盘缓存。你的情况当然会不同。内存需求依赖于如下事实:缓存目标大小,CPU 体系(32位或64 位),同时在线的用户数量,和你使用的特殊功能。
人们经常问如此问题:“我的网络有X 个用户,需要配备什么样的硬件给squid?”因为许多理由,这样的问题好难回答。特别的,很难说X 个用户将产生多少流量。我告诉人们去建立一个有足够磁盘空间,可存储3-7 天web 流量数据的系统。例如,假如你的用户每天8 小时耗费1M 流量(仅仅HTTP 和FTP 传输),那就是每天大约3.5G。所以,我可以说,每兆web 传输你需要10 到25G 的磁盘空间。
1.4 squid 是开源的
Squid 是自由软件和合作项目。假如你觉得squid 有用,请考虑以下面一种或几种方法来回报该项目:
1.参与squid 用户讨论列表,回答问题和帮助新用户。
2.测试新版本,报告bug 或其他问题。
3.致力于在线文档和FAQ。假如你发现错误,将它报告给维护者。
4.将你的局部修改提交给开发者。
5.对开发者提供财政支持。
6.告诉开发者你想要的新功能。
7.告诉你的朋友和同学,Squid 非常Cool。
Squid 是在GNU 公用许可证(GPL)下发行的自由软件。关于GPL 的更多信息请见:http://www.gnu.org/licenses/gpl-faq.html
1.5 Squid 的Web 主页
Squid的主页在http://www.squid-cache.org 你自己阅读该站点吧。
1.6 获取帮助
1.6.1 FAQ
Squid的FAQ文档在http://www.squid-cache.org/Doc/FAQ/FAQ.html ,是对新用户的好信息资源。
1.6.2 邮件列表
Squid 有三个邮件列表可用。邮件列表主页在:http://www.squid-cache.org/mailing-lists.html
1.6.2.1 Squid 用户
订阅该邮件列表,发邮件到 squid-users-subscribe@squid-cache.org
1.6.2.2 Squid 公告
订阅该邮件列表,发邮件到 squid-announce-subscribe@squid-cache.org
1.6.2.3 Squid 开发
加入该邮件列表有所限制。它的内容发布在http://www.squid-cache.org/mail-archive/squid-dev/
1.6.3 职业支持
即付费的支持 - 职业支持服务提供商列表,请见http://www.squid-cache.org/Support/services.html
1.7 启动Squid
请按下面的章节一步一步来吧。