Squid搭建反向代理提高网站访问速度
2013-09-13 13:39
344 查看
反向代理简述:
反向代理服务器有两种传输模式:
1.同步模式:(如:squid)用户发起请求,请求立即被转到后端的服务器,于是在浏览器和后端服务器之间就建立了一个连接,在请求完成前这个连接是一直存在的。
2.异步模式:(如:nginx)用户发起的请求会发送到nginx,nginx接收到所有的数据后在转发到后端的服务器,后端服务器处理完成后把数据返回给nginx,nginx在返回给用户。
由此可见如果用户发起的请求的数据比较大,或者用户端的网速比较慢,同步模式时后端服务器的连接数相对于异步模式会比较多,压力也比较大。
客户端请求访问 WEB 服务时,DNS 将访问的域名解析为 Squid 反向代理服务器的 IP 地址,这样客户端的 URL 请求将被发送到反向代理服务器。如果 Squid 反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端,否则反向代理服务器将向后台的 WEB 服务器请求资源,然后将请求的应答返回给客户端,同时也将该应答缓存在本地,供下一个请求者使用。
Squid 反向代理一般只缓存可缓冲的数据(比如 html 网页和图片等),而一些 CGI 脚本程序或者 ASP、JSP 之类的动态程序默认不缓存。它根据从 WEB 服务器返回的 HTTP 头标记来缓冲静态页面。
工作拓扑:
配置环境:
两台系统均为:CentOS6.3
squid 192.168.0.202
web 192.168.0.203
DNS :host代替(squid.test.com 192.168.0.202)
一、安装squid
下载:http://www.squid-cache.org/Versions/v3/3.3/
清除默认配置,添加自定义的配置:
访问192.168.0.202即可访问到web的页面!
配置多台squid时,配置内容只修改visible_hostname。
本文出自 “李振良的技术博客” 博客,请务必保留此出处http://lizhenliang.blog.51cto.com/7876557/1296331
反向代理服务器有两种传输模式:
1.同步模式:(如:squid)用户发起请求,请求立即被转到后端的服务器,于是在浏览器和后端服务器之间就建立了一个连接,在请求完成前这个连接是一直存在的。
2.异步模式:(如:nginx)用户发起的请求会发送到nginx,nginx接收到所有的数据后在转发到后端的服务器,后端服务器处理完成后把数据返回给nginx,nginx在返回给用户。
由此可见如果用户发起的请求的数据比较大,或者用户端的网速比较慢,同步模式时后端服务器的连接数相对于异步模式会比较多,压力也比较大。
客户端请求访问 WEB 服务时,DNS 将访问的域名解析为 Squid 反向代理服务器的 IP 地址,这样客户端的 URL 请求将被发送到反向代理服务器。如果 Squid 反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端,否则反向代理服务器将向后台的 WEB 服务器请求资源,然后将请求的应答返回给客户端,同时也将该应答缓存在本地,供下一个请求者使用。
Squid 反向代理一般只缓存可缓冲的数据(比如 html 网页和图片等),而一些 CGI 脚本程序或者 ASP、JSP 之类的动态程序默认不缓存。它根据从 WEB 服务器返回的 HTTP 头标记来缓冲静态页面。
工作拓扑:
配置环境:
两台系统均为:CentOS6.3
squid 192.168.0.202
web 192.168.0.203
DNS :host代替(squid.test.com 192.168.0.202)
一、安装squid
下载:http://www.squid-cache.org/Versions/v3/3.3/
yum install -y gcc gcc-c++ make perl perl-devel #安装依赖包 tar zxvf squid-3.3.0.3.tar.gz ./configure --prefix=/usr/local/squid make && make install groupadd squid useradd -g squid -s /sbin/nologin squid chown -R squid /usr/local/squid/var/logs/ /usr/local/squid/var/cache/二、配置squid反向代理
清除默认配置,添加自定义的配置:
vi /usr/local/squid/etc/squid.conf cache_effective_user squid cache_effective_group squid visible_hostname squid.test.com #设置主机名 http_port 80 accel vhost vport #配置squid加速模式 icp_port 3130 #cache_peer squid2.test.com sibling 80 3130 #此项为配置多个squid时配置,配置 squid2 为其邻居,当 squid1 在其缓存中没有找到请求的资源时,通过 ICP 查询去其邻居中取得缓存 cache_peer 192.168.0.203 parent 80 0 no-query originserver round-robin name=web1 cache_peer 192.168.0.204 parent 80 0 no-query originserver round-robin name=web2 #squid1 的两个父节点,originserver 参数指明是源服务器, round-robin 参数指明 squid 通过轮询方式将请求分发到其中一台父节点; squid 同时会对这些父节点的健康状态进行检查,如果父节点 down 了,那么 squid 会从剩余的 origin 服务器中抓取数据,round-robin表示使用通过 RR 轮询方式转发到两个父节点中的一个 cache_peer_domain web1 web2 squid.test.com #允许web1、web2、squid.test.com请求 acl localnet src 192.168.0.202 #指定ip访问 http_access allow all #允许所有人使用该代理.因为这里是代理加速web服务器 icp_access allow localnet #允许从邻居服务器缓冲内发送和接收ICP请求 cache_log /usr/local/squid/var/logs/cache.log access_log /usr/local/squid/var/logs/access.log squid cache_dir ufs /usr/local/squid/var/cache/ 1000 16 256 #高速缓存目录 ufs 类型使用的缓冲值最大允许1000MB空间,32个一级目录,256个二级目录 maximum_object_size 10240 KB #能缓存的最大对象为 10M maximum_object_size_in_memory 512 KB #内存中缓存的最大对象 512K cache_mem 256 MB #squid 用于缓存的内存量三、维护命令
/usr/local/squid/sbin/squid -s #启动squid /usr/local/squid/sbin/squid –k parse #检查squid配置文件是否正确 /usr/local/squid/sbin/squid –N -z #生成缓存目录 /usr/local/squid/sbin/squid -k shudown或/usr/local/squid/sbin/squid -k kill #关闭squid echo "/usr/local/squid/sbin/squid -s " >>/etc/rc.local #设置开机启动测试:
访问192.168.0.202即可访问到web的页面!
配置多台squid时,配置内容只修改visible_hostname。
本文出自 “李振良的技术博客” 博客,请务必保留此出处http://lizhenliang.blog.51cto.com/7876557/1296331
相关文章推荐
- squid正反向代理-加快网站访问速度
- 利用Squid反向代理搭建CDN缓存服务器加快Web访问速度
- 利用Squid反向代理搭建CDN缓存服务器加快Web访问速度
- Squid反向代理搭建CDN缓存服务器加快Web访问速度
- 利用Squid反向代理搭建CDN缓存服务器加快Web访问速度
- 利用Squid反向代理搭建CDN缓存服务器加快Web访问速度
- 通过采用Squid的反向代理功能提高客户端对网站的浏览速度
- Varnish搭建缓存代理提高网站访问速度
- m2014-architecture-imgserver->利用Squid反向代理搭建CDN缓存服务器加快Web访问速度
- 利用 squid 反向代理提高网站性能原理总结
- 利用 squid 反向代理提高网站性能(转载)
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能
- 利用 squid 反向代理提高网站性能