设为首页收藏本站

LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区!

 找回密码
 注册

QQ登录

只需一步,快速开始

#公告#抱歉,网站将关闭,不再开放。由于PC时代已远逝 。在这个后移动互联网时代,我们继续携手前行,保持对技术的热情。共同构建linuxtone知识星球欢迎加入,一起讨论技术、招聘人才、分享资源。请新老linuxtone人 扫码移步到 知识星球:linuxtone

学习是一种信仰!分享是一种快乐!能力= 心态 * 沟通 * 知识 (你的每一天需要正能量!)

 网站的发展需要你贡献一份力量!希望你能每天坚持看贴1小时,并回答网友的问题!祝你在浏览论坛的过程中取得进步!谢谢!linuxtone加油!大家加油! 友情提示: 你今天学习了吗?你今天进步了吗?少一点抱怨!多一点进步!Life is short ! Why not linuxtone ?  

网站的发展、感谢每位坛友的努力!

查看: 9568|回复: 8

[Squid] squid反向代理基本概述及性能事项 [复制链接]

LT管理团队

社区首席勤杂工

Rank: 9Rank: 9Rank: 9

签到
473
注册时间
2008-5-19
最后登录
2019-8-14
在线时间
1946 小时
阅读权限
200
积分
59239
帖子
2551
主题
1209
精华
25
UID
1

LT总司令

发表于 2009-1-22 13:15:44 |显示全部楼层
一、基本概念

squid反向代理作web加速是大型网站的常用模式。
1. squid来自于1990的cache harvest项目。
这个项目一个分支形成squid,另一个形成netapp的netcache产品(netapp的netcache是固化在其硬件产品中的,整体价格很贵)

2.squid是硬盘缓存,其使用内存作缓存内容的索引
(一个索引在32位系统中大小是75bytes,在64位系统中是112bytes)。
可以把squid想象成数据库,硬盘上是数据,内存中是索引:查询内存索引,发现内存位置,发出去。

3.产品下载及说明(http://download.opensuse.org/repositories/server:/proxy/
a)Squid:不用说了,就是squid的主程序
b)SARG的全称是:Squid Analysis Report Generator,SARG作为一款Squid日志分析工具,它采用html格式,详细列出了每一位用户访问internet的站点信息,时间占用信息,排名,连接次数,访问量,访问量等。
如果做反向代理,sarg可以不安装。这个工具对正向代理更有价值。
c)SquidGuard:重定向器,可以重写用户的uri,类似apache的mod_rewrite。关于重定向器,我建议少用,可能会降低性能。


二、性能要素
squid反向代理作web加速器时需要关注的系统性能因素主要是:

1 硬件:

i.大内存(最重要,影响最大);快速大硬盘(第二要素,更多缓存,看网站实际数据量了,要快速的,
  最好是1万转以上的,如sas10K或西部数据的猛禽系列);CPU(较为次要,影响不大,特别是多核处理器基本没用)。

ii.建议匹配配置:每G磁盘空间需要32M内存。这样,512M内存的系统,能支持16G的磁盘缓存。你的情况当然会不同。
内存需求依赖于如下事实:缓存目标大小,CPU体系(32位或64位),同时在线的用户数量,和你使用的特殊功能。
估算:建立一个有足够磁盘空间,可存储 3-7天web流量数据的系统。如带宽1M,则需要约3600*1M的数据缓存(3.5G),
如果一天提供8小时有效访问,则需要缓存10-28G(看重复情况了)。
但Squid官方网站说法:squid使用内存表索引硬盘缓存内容,硬盘内容/内存索引=177,但要同时考虑到squid程序内存,cache_mem,硬盘缓冲cache等占用的内存。
因此,我的估算:2G内存的系统,使用1.5G内存作squid索引,对应硬盘150G。

iii.关于硬盘说明:requests per second = 1000/seek time/硬盘数,一块硬盘是比较准确的,多块硬盘就不好说了。一定要用random-seek time小的盘,而随机寻道时间短意味着转速要快,越快其随机寻道时间越短!

iv.关于Swap:
毫不犹豫地关闭swap,squid是个大进程,使用swap只能使性能下降

2 适合的操作系统:
能够支持posix线程实现异步io的操作系统,如:linux2.6内核的系统

3 适合的文件系统:
reisfer文件系统,处理大量小文件(一般的网页缓存都是小文件),性能最佳

4 每个squid对应专门应用,写明httpd_accel_host避免dns查询,dns查询很消耗时间

5 配置尽量使用IP,不用域名,加快访问速度(如多台缓存服务器/后台服务器等)


三、磁盘IO瓶颈与优化

squid的磁盘IO瓶颈与优化:

A.现象:不使用cache时,平均响应时间明显更好,那么可以确认磁盘I/O是该水平吞吐量的瓶颈

B.硬件:不用raid(并不能带来明显性能提升,而且大大增加系统的风险),最好是独立文件系统+独立硬盘

C.在/etc/fstab中使用使用挂载参数:noatime(不记录文件访问时间),async(异步IO)

D.使用超过你需要的更大磁盘,并且仅仅使用空间的一半,空间越多写性能越好;不行就减少cachedir的大小

E.文件系统方式

1)UFS(squid默认的文件系统方式)性能较好,实时读写。

2)aufs使用异步多线程方式管理缓存读写,在多CPU系统上优势更明显,一个cachedir默认16个线程,需要posix线程系统,稳定性不如ufs,使用Aufs命令:
cache_dir aufs /cache0 4096 16 256
运行tail -f store.log看是否有文件写入磁盘,监控之。
注意:aufs要使用大量文件描述符,注意系统设置(用ulimit命令查看修改,对于suse10一般不用修改系统文件句柄数,仅需要修改进程文件句柄数量)

3)Diskd 使用消息队列实现异步io,还要修改内核参数,不如aufs稳定
4)Coss 用一个大文件存储全部cache,小型squid系统,试验性的
5)null 用于测试squid性能使用,必须指定cache_dir /tmp null

总结:
如果并发不高( 6),使用ufs就ok;
高并发,可以使用aufs(aufs在Linux和Solaris上运行良好)。
而且,同一服务器不要使用不同的缓存机制,cache的大小最好相同。

F.使用reisfer文件系统
已有 1 人评分积分 收起 理由
dennis + 8 调优

总评分: 积分 + 8   查看全部评分

<-sina_sign,1762622645,2a5b1a59,10->感谢大家对linuxtone的支持!</strong>

LT资深版主

醉了星星·醉月亮

Rank: 8Rank: 8

注册时间
2009-3-2
最后登录
2018-1-29
在线时间
331 小时
阅读权限
150
积分
10053
帖子
440
主题
59
精华
1
UID
1656

LT同学

发表于 2009-3-14 21:42:52 |显示全部楼层
我就郁闷了,这么好的文章就怎么没人欣赏!我顶~我支持......

使用道具 举报

Rank: 8Rank: 8

注册时间
2008-9-23
最后登录
2012-11-2
在线时间
60 小时
阅读权限
90
积分
16046
帖子
47
主题
8
精华
0
UID
319
发表于 2009-3-18 17:46:16 |显示全部楼层
顶,这里好东西越来越多了

使用道具 举报

Rank: 1

注册时间
2009-2-5
最后登录
2009-6-6
在线时间
16 小时
阅读权限
1
积分
8
帖子
15
主题
1
精华
0
UID
1301
发表于 2009-4-4 00:03:58 |显示全部楼层
好文章!学习啦

使用道具 举报

Rank: 1

注册时间
2009-2-18
最后登录
2019-7-23
在线时间
4 小时
阅读权限
1
积分
1
帖子
2
主题
0
精华
0
UID
1473
发表于 2009-5-15 12:18:23 |显示全部楼层
学习,这么好的文章,支持

使用道具 举报

Rank: 3Rank: 3

注册时间
2009-5-31
最后登录
2019-7-22
在线时间
797 小时
阅读权限
30
积分
655
帖子
325
主题
302
精华
0
UID
3317
发表于 2009-6-1 16:05:03 |显示全部楼层
有些数据值得参考
收藏下

使用道具 举报

Rank: 8Rank: 8

注册时间
2010-11-25
最后登录
2015-1-7
在线时间
142 小时
阅读权限
90
积分
18225
帖子
95
主题
28
精华
0
UID
11240
发表于 2012-12-29 14:27:56 |显示全部楼层
果断收藏备用

使用道具 举报

Rank: 8Rank: 8

注册时间
2012-2-24
最后登录
2015-1-29
在线时间
89 小时
阅读权限
90
积分
16706
帖子
23
主题
0
精华
0
UID
18150
发表于 2013-1-28 14:26:31 |显示全部楼层
顶起  好文章

使用道具 举报

Rank: 4

注册时间
2011-9-24
最后登录
2019-7-22
在线时间
5 小时
阅读权限
50
积分
1599
帖子
5
主题
1
精华
0
UID
15670
发表于 2014-11-24 19:25:38 来自手机 |显示全部楼层
嗯(⊙_⊙)很到位。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

IT运维专家网感谢您的支持

合作联系: QQ:67888954/MSN:cnseek@msn.com/mail:netseek@linuxtone.org

Archiver|手机版|感谢所有关心和支持过LinuxTone的朋友们 转载本站内容请注明原作者名及出处 ( 京ICP备08103151 )   |

GMT+8, 2019-8-18 00:57 , Processed in 0.025842 second(s), 15 queries , Apc On.

Powered by Discuz! X2 Licensed

© 2001-2011 Comsenz Inc.

回顶部