知识大全 Squid+MRTG实现完善的缓存代理和http服务加速代理
Posted 知
篇首语:欠伸展肢体,吟咏心自愉。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Squid+MRTG实现完善的缓存代理和http服务加速代理相关的知识,希望对你有一定的参考价值。
Squid+MRTG实现完善的缓存代理和http服务加速代理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
Squid是一种源代码开放的高性能代理缓存服务器 它可支持FTP gopher和Http数据对象的代理 另外 Squid也支持SSL 多样化访问控制和代理请求的完整日志功能 通过轻量级的网际缓存协议 Squid以网状或层次的方式分配内存 这样能节省额外的带宽 提供Http服务加速代理 Web服务器把Http数据推到Squid缓存中 外界的请求访问可以通过缓存提取所需数据 实现Web服务器的动态镜像 另外 为了实现对Squid服务器的监控 采用MRTG MRTG 是 Multi Router Traffic Grapher 的缩写 它主要的用途是监测网络服务设备的流量 并生成包括图片的HTML文件 可以直观的显示网络服务的流量 以提供Squid缓存服务的监测 通过Squid+MRTG可以配置一个完善的代理服务提供方案 下面为具体配置步骤 一.基础准备 Squid下载地址 版本 squid STABLE src tar gz MRTG下载地址 ~oetiker/webtools/mrtg/pub/ 版本 mrtg tar gz 机器配置为 M内存 G硬盘(其中 G分区专用缓存目录) PII 二.安装步骤 解压Squid(一般做法 把软件包括在/opt目录下) #tar zxvf squid STABLE src tar gz #cd squid //进行编译 # /configure prefix=/usr/local/squid enable delay pools enable snmp enable cache digests enable auth modules= NCSA #make all #make install *对编译项目的解释 prefix 为编译Squid所存放的目录 这里为/usr/local/squid enable delay pools 此选项使能一个延时池 这样能对某些特定的请求限制额定带宽 enable snmp 此选项可以让MRTG使用SNMP协议对服务器的流量状态进行监测 因此必须选择此项 使Squid支持SNMP接口 enable cache digests 使能缓存摘要 本来此项目的是为了在Squid集群服务之间迅速发现缓存对象 这里在本地使用 可以加快请求时 检索缓存内容的速度 enable auth modules 此编译选项启用认证模块 可以对访问代理用户进行授权 安装MRTG #tar zxvf mrtg tar gz #cd mrtg* # /configure prefix=/usr/local/mrtg #make #make install /* 几点说明 .MRTG大部分程序是用Perl脚本写成 需要Perl版本为 以上才能运行 RH 带有perl版本为v 非常满足要求 (如果版本不够 请到下载安装 ) .MRTG需要zlib gd和libpng三个处理图形的库支持 RH 满足此要求 (如果没有安装 请到下载安装) 三.具体配置 lSquid配置(仅对必要选项配置并说明) _port 此选项用于Squid代理所侦听的端口 由于要实现Http加速代理 则侦听端口 tcp_outgoing_address 此句法指定了远程服务器的IP地址 这里我们使用 来指定为所有地址 tcp_ining_address 这里可以使用_port语法进行绑定端口和IP地址 表示客户端的请求 可以不使用 cache_mem MB 由于Squid在读写磁盘 I/O通道 数据转贮等需要大量内存 我们可以把内存值稍微设置大一些 这样可以提供服务器性能 cache_swap_low 这用做表示缓存内部对象的替换的衡量基线 当交换分区的磁盘利用率超越这个基线 那么缓存对象替换也就随之开始 这里是用百分率做衡量标准 cache_swap_high 此标记用于缓存对象替换的最高程度 当交换分区磁盘利用率接近此设置 则表示对象的更新程度更为剧烈 这里由于我的缓存区设置比较大 因此设置为 % 下面几个配置标记采用系统默认配置 maximum_object_size KB 超过此尺寸的对象将不缓存 minimum_object_size KB 小于此尺寸的对象将不缓存 maximum_object_size_in_memory KB 内存中能缓存的最大对象尺寸 ipcache_size 指定IP缓存大小 ipcache_low 缓存IP地址的最低基线 ipcache_high 缓存IP地址的最高极限 fqdncache_size 缓存DNS全域名解析的尺寸 cache_replacement_policy lru 此标记用于当缓存新对象时 使用缓存策略来清除缓存中特定对象 这里使用lru表示 它只替换长时间没有被访问过的对象 其他策略请参看配置文档介绍 memory_replacement_policy lru 此用法同上 区别在于替换内存对象 cache_dir ufs /cache 设置缓存根目录为/cache 类型为ufs 缓存区大小为 G 可以有 个二级子目录 每有二级目录有 个三级子目录 cache_access_log /var/log/squid/access log cache_log /var/log/squid/cache log cache_store_log /var/log/squid/store log cache_swap_log /var/log/squid/swap log 上面几项是缓存日志记录的路径和文件名 log_ip_on_direct on 记录客户端主机的IP地址 log_fqdn on 记录全DNS域名解析 mime_table /usr/local/squid/etc/nf Squid所用mime的文件路径 pid_filename /usr/local/squid/logs/squid pid Squid进程ID的文件 ftp_user 这里可以使用匿名登陆FTP服务器 ftp_list_width FTP文件列表长度 超过长度则截断文件名 ftp_passive on 允许主动连接FTP服务器 dns_nameservers 指定代理的域名解析服务器 authenticate_program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd 代理认证程序 这里在/usr/local/squid/etc使用htpasswd产生一个密码文件 具体方法如下 #htpasswd –cdb passwd auth_usr pass #htpasswd –db passwd auth_usr pass #htpasswd –db passwd auth_usr pass 创建passwd文件 并添加auth_usr auth_usr auth_usr 三个认证用户 authenticate_children 所需要要产生的认证进程数 authenticate_ttl 此标记设置认证保持时间 authenticate_ip_ttl 此标记设置认证绑定IP地址的时间长度 authenticate_ip_ttl_is_strict on 此标记可在authenticate_ttl时间内 拒绝其他非认证IP地址访问 request_header_max_size KB request_body_max_size MB 设置了Http请求的包头和数据大小 request_body_max_size 这里 请求所返回的数据大小为 意义为没有任何限制 connect_timeout seconds read_timeout minutes request_timeout seconds 上面几项是代理服务几个超时设置 这里使用配置文件默认值 下面是访问控制列表一些配置 这里对访问的IP地址 域名 访问类型极其访问代理的权限做的限制 acl acldomain dstdomain acl acceleratedport port acl acceleratedhost dst / acl aclprotocol proto HTTP FTP acl aclmethod method GET POST acl aclauth proxy_auth required (注 这里使用required表示任何passwd文件中存在的合法用户才授予访问权限 ) acl aclsnmp snmp_munity secrect MRTG可以使用snmp协议检测此代理服务运行状态 acl aclconn maxconn 可并行连接的最大数量 启用定义的访问控制列表 _access allow manager localhost _access deny manager _access allow aclauth _access allow acceleratedport acceleratedhost _access deny all 下面为缓存管理设置 cache_mgr 设置缓存管理者的接受邮件地址 cache_effective_user squidusr cache_effective_group squidgrp 设置执行Squid的用户和用户组 注 设置用户和用户组及其权限修改方法如下 #groupadd squidgrp #useradd –g squidgrp –d /home/squidusr squidusr 修改log日志权限属性 使squidusr有写权限 #chown squidusr /var/log/squid #chgrp squidgrp /var/log/squid #chown squidusr /var/log/squid/* log #chown squidgrp /var/log/squid/* log 下面配置Http服务加速代理 d_accel_port d_accel_with_proxy on (注 如果配置代理和加速服务 必须d_accel_with_proxy选项打开 如果需要配置多个加速 可以使用虚拟的概念 ) snmp_port 此标记设置snmp_port端口为 可以使MRTG监测服务运行状态 snmp_access allow aclsnmp localhost cha138/Article/program/Oracle/201311/17413相关参考
理解ASP.NET与客户端缓存之HTTP协议 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!前言
asp.net客户端浏览器缓存的Http头介绍 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!让浏览
最简单的缓存机制把整个Aspx页面保存在服务器端内存中用户请求页面时直接从服务器端内存中提取数数据不在经历页面的生命周期主要用于不经常更新和修改而在第一次编译是时要经过大量处理的数据页面输出缓存是
使用分布式缓存来群集Spring远程服务 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishix
Squid基础与配置 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作者戴专 一Squid
如何关闭Squid的记录 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Squid缺省会把访问及
知识大全 有关用linux作NAT服务 (代理,透明代理等)
有关用linux作NAT服务 (代理,透明代理等) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
法律服务属于哪类税收分类编码请参考如下编码:3040802000000000000经纪代理服务指各类经纪、中介、代理服务。包括金融代理、知识产权代理、货物运输代理、报关代理、法律代理、房地产中介、职业
知识大全 珠海哪家企业是专门做,代理记账,代理报税,公司注册,之类的商务服务的
珠海哪家企业是专门做,代理记账,代理报税,公司注册,之类的商务服务的?你可以先到百度上面搜一下代理记账这些关键词,看看,了解一下,低调留下尚信财务咨询有限公司,应该符合你的要求!跪求一家专门做代理记账
Web服务代理的URL行为属性 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在里调用webse