squid 可以做反向代理将系统中相对静态的页面进行缓存和负责均衡,
提高网站访问速度,增强网站可用性、安全性.
用户访问Squid 反向代理服务器的 IP 地址,这样客户端的 URL 请求将被发送到反向代理服务器。
如果Squid反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端,
否则反向代理服务器将向后台的 WEB服务器请求资源,然后将请求的应答返回给客户端,
同时也将该应答缓存在本地,供下一个请求者使用。

其示意图如下:

Windows中安装squid步骤:
1,从http://squid.acmeconsulting.it下载squid windows的安装文件.
也可以从http://download.csdn.net/detail/kkdelta/4474605下载.
下载后解压将squid放在C:\目录下(default),你也可以把Squid放到其他的路径,
但是需要大量的配置squid配置文件中的路径信息。
2,重命名etc文件夹下的文件
squid.conf.default ==> squid.conf
mime.conf.default ==> mime.conf
cachemgr.conf.default ==> cachemgr.conf 
3,简单配置squid.conf,使配置达到如下图的效果

visible_hostname squidhost
#设定squid的主机名,如无此项squid将无法启动
http_port 3128 accel vhost vport
#设定squid为accel加速模式,vhost必须要加.否则将无法将主机头转发至后端服务器,
#访问时就会出现无法找到主机头的错误
cache_peer 147.151.240.234 parent 8080 0 no-query originserver round-robin name=webserver1
cache_peer 147.151.241.151 parent 8080 0 no-query originserver round-robin name=webserver2
cache_peer_domain  webserver1 webserver2 localhost
#将 localhost的请求通过 RR 轮询方式转发到2个父节点中的一个.
#http://localhost:3128的请求将转发到147.151.240.234:8080或者147.151.241.151:8080
acl all src 0.0.0.0/0.0.0.0
http_access allow all

4,启动squid
C:\squid\sbin>squid -z #创建cache目录.
C:\squid\sbin>squid #启动squid

测试:
将147.151.240.234和147.151.241.151的tomcat启动,放上一个test.jsp文件.
在151的机器上的test.jsp输出 The JSP in Tomcat instance 151 
在234的机器上的test.jsp输出 The JSP in Tomcat instance 234
访问http://localhost:3128/xxxweb/test.jsp会轮流输出上面的结果.
对一个jsp的访问每次都会转发到web server上:X-Cache: MISS from squidhost

  1. [root@Fedora-WLS9-1 bin]# curl -I http://147.151.240.52:3128/examples/jsp/test.jsp
  2. HTTP/1.0 200 OK
  3. Server: Apache-Coyote/1.1
  4. Set-Cookie: JSESSIONID=F3C10D53A916B1852D06687E9E581A2F; Path=/examples
  5. Content-Type: text/html
  6. Content-Length: 972
  7. Date: Fri, 03 Aug 2012 17:51:01 GMT
  8. X-Cache: MISS from squidhost
  9. X-Cache-Lookup: MISS from squidhost:3128
  10. Via: 1.0 squidhost:3128 (squid/2.6.STABLE22)
  11. Connection: close

对一个静态的html的访问每次都会转发到web server上:X-Cache: HIT from squidhost

    1. [root@Fedora-WLS9-1 bin]# curl -I http://147.151.240.52:3128/examples/jsp/test.html
    2. HTTP/1.0 200 OK
    3. Server: Apache-Coyote/1.1
    4. Accept-Ranges: bytes
    5. ETag: W/"26-1343982480000"
    6. Last-Modified: Fri, 03 Aug 2012 08:28:00 GMT
    7. Content-Type: text/html
    8. Content-Length: 26
    9. Date: Fri, 03 Aug 2012 17:28:54 GMT
    10. Age: 195
    11. <span style="color:#FF0000;"></span>X-Cache: HIT from squidhost
    12. X-Cache-Lookup: HIT from squidhost:3128
    13. Via: 1.0 squidhost:3128 (squid/2.6.STABLE22)
    14. Connection: close

Windows Squid 安装配置的更多相关文章

  1. 在windows下安装配置Ulipad

    在windows下安装配置Ulipad 今天推荐一款轻便的文本编辑器Ulipad,用来写一些小的Python脚本非常方便. Ulipad下载地址: https://github.com/limodou ...

  2. Windows下安装配置MongoDB

    Windows下安装配置MongoDB 一,介绍 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB ...

  3. Windows平台安装配置mysql数据库

    Windows平台安装配置mysql数据库 作者:Eric 微信:loveoracle11g 去下载mysql软件 https://www.mysql.com/downloads/ https://d ...

  4. (转)windows 下安装配置 Nginx 详解

    windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...

  5. QT学习之windows下安装配置PyQt5

    windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...

  6. RabbitMQ学习在windows下安装配置

    RabbitMQ学习一. 在windows下安装配置 1.下载并安装erlang,http://www.erlang.org/download.html,最新版是R15B01(5.9.1).由于我机器 ...

  7. Windows下安装配置免安装MySQL5.7服务器

      Windows下安装配置免安装MySQL5.7服务器 1.下载.解压安装包 从MySQL官方网站上下载mysql-5.7.19-winx64.zip 下载完成后,把安装包解压到D:\DevSoft ...

  8. Windows下安装配置MySQL

    Windows下安装配置MySQL的基本步骤 一.MySQL下载 MySQL官方下载地址https://dev.mysql.com/downloads/mysql/5.7.html#downloads ...

  9. Windows下安装配置ant

    1.ant安装 请从官网下载ant的*.zip格式的安装包, Windows建议下载*.zip版本, Linux建议下载*.gz版本. 2.配置环境变量 解压之后,在Windows中配置环境变量, 在 ...

随机推荐

  1. Bellman-Ford

    看来一千个acmer有一千个迪杰斯特拉,Bellman-Ford也是一样. 看了刘汝佳的bellman-ford,简直和spfa一模一样啊!!! 松弛n -1 次还是可以松弛,说明有负环; 刘汝佳写得 ...

  2. EventBus使用详解(一)——初步使用EventBus

    一.概述 EventBus是一款针对Android优化的发布/订阅事件总线.主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间 ...

  3. 遗传算法在JobShop中的应用研究(part 2:编码)

    编码 在上一篇博客中我们讨论了车间调度问题的编码,具体说就是根据工件的个数和每个工件的工序数来生成12122这样的数字排列,具体的说一个工件包含多少道工序,那么这个工件的编号就出现多少次.从12122 ...

  4. php多维数组去除空元素

    在php中去除数组中的空值可以使用array_filter() 这个函数 但是这个函数只能对一维数组起作用,一旦需要对多维数组去空就不行了,而且去除的空也包括(int)0,(string)0,使用起来 ...

  5. Linux基础※※※※如何使用Git in Linux(二)

    参考资料: 1. http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 2. Git-简 ...

  6. 《BI那点儿事》ETL中的关键技术

    ETL(Extract/Transformation/Load)是BI/DW的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤. ...

  7. Android Studio 简单设置

    转自:http://ask.android-studio.org/?/article/14 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings - ...

  8. js、jquery对于html内容的转义

    -------2016-7-27 14:23:34-- source:[1]js转义html

  9. 软件测试--测试Demo

    视频地址(第二课时):https://pan.baidu.com/s/1gfLVC2n 软件安装好了! 软件默认的浏览器是火狐. 如果需要IE,chrome,都在前一篇的安装包里有. 测试结果 视频里 ...

  10. jquery的colorbox关闭并传递数据到父窗

    function closebox(para1, para2) { var k = parent;// 父窗口对象 k.document.getElementById("para1" ...