cache_peer和cache_peer_domain详解

转载 2015年07月08日 19:06:57
acl allowuser 192.168.1.1/32
cache_peer 192.168.1.50 parent 81 0 no-query originserver weight=1 name=a
cache_peer 192.168.1.50 parent 82 0 no-query originserver weight=1 name=b
cache_peer 192.168.1.50 parent 80 0 no-query originserver weight=1 name=c

cache_peer_domain a
 www.serverA.com
cache_peer_domain b www.serverB.com
cache_peer_domain c www.serverC.com

#以上六行配置表示:
#从客户端过来的请求,如果是
 www.serverA.com则Squid向 Server 192.168.1.50的端口81发送请求;
#
从客户端过来的请求,如果是
 www.serverB.com则Squid向 Server 192.168.1.50的端口82发送请求;
#从客户端过来的请求,如果是 www.serverC.com则Squid向 Server 192.168.1.50的端口80发送请求;
#换句话说:设定不同域名转发到不同的cache_peer上,如果没有这项.不同的域名可能被分发到同一台服务
 器(或同一台服务器的端口)上.
#name=a表示给cache_peer一个别名
 
cache_peer_access a allow all
cache_peer_access b allow all
cache_peer_access c allow all
#设置访问权限,允许所有外部客户端访问 a b c
#如果是cache_peer_access a allow allowuser
#表示只允许allowuser访问 www.serverA.com
 
 
另一个例子:
acl user1 src 192.168.2.68/32
acl user2 src 192.168.2.94/32
#定义两个user IP

cache_peer 192.168.2.172 parent 80 0 no-query no-digest originserver name=www1  sourcehash
cache_peer 192.168.2.173 parent 81 0 no-query no-digest originserver name=www2  sourcehash
cache_peer_domain www1 www.domain.com
cache_peer_domain www2 www.domian.com
#表明对www.domian.com的请求,squid向192.168.2.172的80端口和192.168.2.173的81端口发出请求
cache_peer_access www1 allow user1
cache_peer_access www2 allow user2
#允许user1访问192.168.2.172的80端口
#允许user2访问192.168.2.173的81端口 
 
设置子父代理的cache_peer:

如果要设置父级的代理服务器,例如proxy.test.edu.cn那么可以这样配置

在#cache_peer hostname type 3128 3130 之下加入

cache_peer proxy.test.edu.cn parent 3128 3130 no-query no-netdb-exchange

 

如果要设置同级的代理服务器,如:192.168.1.41 192.168.1.42则可以这样来配置

cache_peer 192.168.1.41 sibling 3128 3130 proxy-only

....

注意目前各单位施行代理服务器分级管理,设置父级代理服务器,还必须取得上层单位的同意

 

说明:

(1)命令cache_peer的定义格式是:

cache_peer hostname type 3128 3130

hostname 是用来指定获取缓冲的PROXY主机的名字

type 是PROXY主机的类型,有以上PARENT SIBLING两种

3128:HTTP_PORT

3130:ICP_PORT

 

(2)附加配置选项(注意应为小写,配置时)

NO-QUERY:不做查询操作,直接获取数据

NO-NETDB-EXCHANGE:代理服务器之间不交互信息

NO-DIGEST:代理服务器之间不做摘要表查询,直接用ICP协议沟通(同级代理)

PROXY-ONLY:直接获取对方缓冲,转交给代理服务器的客户端,而不存入本地

ROUND-ROBIN:如果设置数部上层服务器,那么轮流查询父级服务器

LOGIN=USER:PASSWD:要求对方做帐号及密码验证,例如

cache_peer 192.168.1.41 sibling 3128 3130 login=kao:123456


举例:
以下为squid1机器上的配置

icp_port 3130
acl domian dst www.domian.com
acl squid2 src xx.xx.xx.xx
acl squid3 src xx.xx.xx.xx

http_access allow  squid2
http_access allow  squid3

1.配置 squid2、squid3 为其邻居,当 squid1 在其缓存中没有找到请求的资源时,通过 ICP 查询去其邻居中取得缓存
cache_peer squid2 sibling 80 3130
cache_peer squid3 sibling 80 3130

2.squid1的三个父节点,originserver 参数指明是源服务器,round-robin 参数指明 squid 通过轮询方式将请求分发到其中一台父节点;squid 同时会对这些父节点的健康状态进行检查,如果父节点down了,那么 squid 会从剩余的 origin 服务器中抓取数据。
cache_peer 192.168.1.1 parent 8080 0 no-query originserver round-robin name=www1
cache_peer 192.168.1.2 parent 8080 0 no-query originserver round-robin name=www2
cache_peer 192.168.1.3 parent 8080 0 no-query originserver round-robin name=www3
 
3.将 www.domian.com 域的请求通过 RR 轮询方式转发到三个父节点中的一个。
cache_peer_domain www1 domian
cache_peer_domain www2 domian
cache_peer_domain www3 domian

4.always_direct会导致所有请求都直接发送到原始服务器。而不会去查询sibling,对于www.domian.com这个域名不需要直接出去,而是要询问sibling。其余的域名,squid依然通过hosts去进行转发
always_direct allow !domain


squid 折叠回源解析

折叠回源(合并回源)是squid高并发下的常见流程
  • rian_lemon
  • rian_lemon
  • 2016年12月23日 11:59
  • 509

quartz详解1:初步了解quartz

http://blog.itpub.net/11627468/viewspace-1763389/ 一、引入       你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,...
  • guolong1983811
  • guolong1983811
  • 2016年05月25日 20:16
  • 2983

《这就是搜索引擎:核心技术详解》读书笔记

学Java的时候也顺便看了一下网上的一个爬虫的源码,感觉看完了收获也很有限,只是大概了解了一下其基本思路:从用户添加的种子URL作为起点,不断请求web页面,然后从页面中提取出新的URL,添加到爬取队...
  • hust_dxxxd
  • hust_dxxxd
  • 2016年05月03日 22:12
  • 509

SpringBoot开发详解(一)--初识SpringBoot

初识SpringBoot写在前面的话:越来越多的公司开始使用sprinbgboot作为后台服务器开发的框架,作为目前微服务框架的佼佼者,现在学习springboot框架是一个很好的机会,我自己也在学习...
  • qq_31001665
  • qq_31001665
  • 2017年02月01日 01:06
  • 2350

Java 接口interface的详解

1.接口的概述 主要是使用接口来拓展定义类的功能,可以弥补java中单继承的缺点。 2.接口的定义格式 interface 接口名{ 属性 抽象方法 } 接口的体验 inte...
  • qq_33642117
  • qq_33642117
  • 2016年07月16日 21:50
  • 754

《TCP/IP详解》读书笔记

本书以UNIX为背景,紧贴实际介绍了数据链层、网络层、运输层 一、整体概念 1.各层协议的关系,只讨论四层 各层常见的协议: 网络层协议:IP协议、ICMP...
  • peter517
  • peter517
  • 2013年05月21日 09:41
  • 2887

SpringMVC核心配置文件详解

原文地址:http://downpour.iteye.com/blog/1389285 在上一篇文章中,我们从DispatcherServlet谈起,最终为读者详细分析了SpringMVC的初始化主线...
  • tanga842428
  • tanga842428
  • 2017年01月23日 14:34
  • 4004

Java反射机制详解

Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反...
  • oChangWen
  • oChangWen
  • 2016年05月22日 11:52
  • 8395

JDBC入门详解

JDBC入门详解
  • qq_26676207
  • qq_26676207
  • 2016年10月28日 10:06
  • 1545

nginx超详细讲解之概述

下载地址:http://nginx.org/en/download.html 一、nginx目录 conf 配置文件 html 网页文件 logs 日志文件 sbin 主要二进制程序 nginx默...
  • u014459326
  • u014459326
  • 2016年11月27日 21:25
  • 2711
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cache_peer和cache_peer_domain详解
举报原因:
原因补充:

(最多只允许输入30个字)