用squid再次疯狂加速你的web

来源:百度文库 编辑:神马文学网 时间:2024/05/01 17:00:33
January 14, 2004
用squid再次疯狂加速你的web
昨天给大家介绍了用tmpfs加速你的linux服务器,我觉得还是不够过瘾,今天趁热打铁继续学了一招,用squid来疯狂加速你的web网站,对自己web网站速度不满意的话,不妨试验一下我下面推荐的方法。
首先你得有squid代理服务器,怎么装我就不讲了,用redhat的直接使用她的rpm安装就行。
配置squid的配置文件,使其支持httpd加速器工作方式。
编辑“squid.conf”文件(vi /etc/squid/squid.conf),增加下面内容:
http_port 80
icp_port 0
acl QUERY urlpath_regex cgi-bin ?
no_cache deny QUERY
cache_mem 16 MB
cache_dir ufs /tmp 256 16 256
log_icp_queries off
buffered_logs on
emulate_httpd_log on
redirect_rewrites_host_header off
half_closed_clients off
acl all src 0.0.0.0/0.0.0.0
http_access allow all
cache_mgr admin
cache_effective_user squid
cache_effective_group squid
httpd_accel_host 210.51.0.124
httpd_accel_port 81
http_port”参数指定Squid监听浏览器客户请求的端口号,这里当然是80了
cache_dir ufs /tmp 256 16 256
cache_dir参数设定使用的存储系统的类型。一般情况下都类型应该是ufs,目录应该是“/tmp”,在该目录下使用的缓冲值为256MB,允许在“/tmp”下创建的第一级子目录数为16,每个第一级子目录下可以创建的第二级子目录数量为256
选项“httpd_accel_host”和“httpd_accel_port”定义了真正的Web服务器的主机名和端口号。在这里的配置中,真正的HTTP服务器运行在IP地址为210.51.0.124 (www.5ilinux.com)的主机上,运行端口为81。
ok,squid设置完毕。
接着设置apache,很简单,只要把你的httpd监听端口设置成81就成,然后重启你的apache。
接着重启你的squid服务,现在你访问你的web网站,已经是用了squid的http加速工作模式,你可以通过看squid的log日记看到他的运行情况。
我还是没搞明白怎么配合使用虚拟主机,以上方法只实现一个域名,不知大家有没有做过虚拟主机squid加速,提点一下吧
frank发表 于January 14, 2004 12:22 PM |回复(11) |引用(1)
回复
squid配置虚拟主机还是很简单的,仔细看说明文档
1、httpd_accel_host virtual
2、httpd_accel_uses_host_header on(说明里有,仔细看!!!)
最关键的是要在apache里改点东西:)
1、port 8080(因为squid占用了80,或者只是举个例子)
2、NameVirtualHost x.x.x.x:8080(一定要和apache本身的port一样,不让加速后的所有网站都将指向默认站点)
不对之处请指正,本人一直都这么用,没出现任何问题
Posted by:andyryu at June 23, 2004 04:30 PM
我也很想知道怎么可以配合使用虚拟主机,实现多个域名,请指教
Posted by:aurora at May 10, 2004 10:55 AM
张汪:
找一个你能控制的在公网的机器,装个代理就可以,当然你要访问类似bbc,voa等本身就被屏蔽的网站那就得找一些国外得代理才行,国内也有,但很少。
Posted by:frank at April 26, 2004 10:39 PM
我用的是校园网,有的网站可以上,但有的却不能?能不能告诉我怎么绕过服务器?谢谢?
Posted by:张汪  at April 24, 2004 11:33 PM
偶然发现chinadns使用了 squid 来集群给客户提供缓存服务
偶然的错误信息发现了页面包含如下信息
squid/2.5.STABLE4
呵,证明他们已经成功利用这个软件解决了虚拟主机的问题
Posted by:笑容 at April 7, 2004 11:54 AM
我访问国外就用代理,平时都不用代理,服务器随时调整的~
嘿嘿
Posted by:kabaiese at March 14, 2004 04:14 AM
可能跟你的squid配置有关系,我这边就很快,但我由于没有解决虚拟域名的问题,所以忍痛割爱了:(
Posted by:frank at March 3, 2004 04:23 PM
我又一问题,我用这种加速模式运行的时候,当访问量大时我得到网页的内容会很慢,但是这时如果我绕过squid,直接访问apache的81端口获取网页就很快,这是为什么?难道squid性能问题?
Posted by:freenetwalker at March 3, 2004 09:42 AM
To:frank: sohu用的squid是跑在另外的主机上吧??
还有我怎么觉得加入虚拟主机对同一个站点好象没什么用处……en,个人之言:P
Posted by:kana at January 16, 2004 03:27 PM
有些问题很难回答,至少我对mysql的性能调整还不是很熟悉,
但我知道sohu好像就是用squid来加速它的网站的。
我说的虚拟主机跟squid配合还是挺麻烦的,至少我是没配出,你说的是普通的配置,反正我没配置出来不知为什么??
Posted by:frank at January 14, 2004 05:31 PM
几个疑虑:
1.如果网站是基于数据库的话,比如mysql,因为数据库有最大化利用内存的
开关,大多的数据其实已经在内存里了,这样做是不是在效率上反而有所降低呢。
2.访问量大的站点上好像不怎么合适,因为apache这样的服务器软件软件是经过大量的站点验证其性能的,如果这中间再经过一个代理层,这个代理层的IO性能怎么样不能保证,有时候反而成为速度瓶颈。如果访问量不大又好像没有必要这么作了。
3.虚拟主机在apache,dns里设置好了,这里只是个代理转发并缓冲的机制,
应该不要特别设置吧?
个人之见,未经验证,还请指教
Posted by:echo52 at January 14, 2004 05:17 PM
from:http://www.5ilinux.com/blog/archives/000077.html