当前位置: 网站建设 > 网页设计 > 建站经验 >

大规模网站架构之WEB加速器SQUID(二)

时间:2013-03-02 03:58来源:未知 作者:admin 点击:

标签:大规模网站架构之WEB加速器SQUID(二) SQUID(2)Web(48)架构(12)大规模(2)网站(482)else(1)加速器(1)C(23)
2) else if ((CURRENT_DATE-DATE) (min + (max-min)*percent),cache是新鲜的 min, max的单位是分钟,percent就是百分比。 3) else cache是过期的 --> [网站建设之]大规模网站架构之WEB加速器SQUID(二) 引言 大规模网站瓶颈之一就是性能问题,如何让你的网站飞速运行起来,始终是架构师和开发职员苦于思考的问题,随着CMS的成熟,大多数门户及网站都通过静态化来晋升网站的性能和保险,但随之而来CMS管理宣布也变得越复杂,
大规模网站架构之WEB加速器SQUID(二)》文章地址:http://www.tfxk.com/wangyesheji/jianzhanjingyan/030233b92013.htm

2) else if ((CURRENT_DATE-DATE) < (min + (max-min)*percent),cache是新鲜的

min, max的单位是分钟,percent就是百分比。


3) else cache是过期的

--> [网站建设之]大规模网站架构之WEB加速器SQUID(二)

引言    大规模网站瓶颈之一就是性能问题,如何让你的网站飞速运行起来,始终是架构师和开发职员苦于思考的问题,随着CMS的成熟,大多数门户及网站都通过静态化来晋升网站的性能和保险,但随之而来CMS管理宣布也变得越复杂,如何能使发布的信息疾速被用户访问,如何便利机动定义一种策略,使缓存跟着应用的变更变化,成了我亟待解决的问题。 本文仅针对基于asp.net开发的网站交互性非实时部分进行探讨,实时交互局部解决方案将在后续部门予以论述,大流量、高并发的网站的底层系统架构
一、WEB加速通常有如下计划:
1、基于asp.net技巧的页面缓存 基于.net技术的页面缓存,通常有如下两种应用方法: 一、基于数据库触发(设置缓存依附策略,当数据库中数据发生变化时,触发缓存失效;但微软供给的解决方案目前仅支撑SQL Server,如果是ORACLE需要本人实现触发接口)。 二、基于文件依赖的策略(可以设置缓存依赖于文件中的详细键值,当数据更新时,更新文件键值迫使缓存失效)。 优点:实现比拟简单 缺陷:粒度太粗,对IIS、.net Framework依赖太强,策略还不太完美,跨机器、集群访问方面存在瓶颈。
2、页面静态化 页面静态化有可分为全体静态化、部分静态化、伪静态化等。 长处:页面静态化后,减轻了数据访问的累赘,同时因为静态页面不需要复杂处置进程(如ASP.NET页面性命周期),从而进步网站的机能。 毛病:页面静态化增加了保护管理的庞杂度,可能统一页面在多个页面之间被援用,需要进行触发级连更新。当大批并发时,大学生门户网站的六点运营经验,更新静态页面会产生LOCK,导致页面访问超时。

该选项让squid在确认请求里,以no-cache指令传递一个请求。换句话说,squid在转发请求之前,对该请求增长一个If-Modified- Since头部。注意这点仅仅在目的有Last-Modified时间戳时才干工作。外面进来的请求保存no-cache指令,以便它达到原始服务器。

override-expire

refresh_pattern 的语法是


对于SQUID FOR WINDOWS先容已经良多,本文就不在赘述,详见SQUID威望手册这本书。
在使用SQUID之前,大型高性能网站的十项规则,首先要计划或断定你现有布署环境,如果你是Single Web Server 倡议你在Web Server前增添一台机器做为SQUID服务器

三、SQUID FOR WINDOWS配置
   本文中SQUID放在172.20.65.201的机器上,应用WEB SERVER IP为172.20.65.203,其中SQUID在201上的80端口侦听,测试客户端机器为172.20.65.231,在squid.conf中#代表解释,所以开启某项设置,需去掉前面的#。TAG标签代表每一功效项的设置。
1、下载    下载SQUID FOR WINDOWS(我所用的版本是Squid 2.7.STABLE6,大型高性能Web站点十项规则,各个版本的配置可能略有不同,大家请留神) Tag:web   squid   web   squid  



SQUID应用了LM算法,LM就是页面Header里时间(Date)跟Last-Modified时间的差。Date个别是Squid从后面取页面的时间,Last-Modified 普通是页面天生时光。

cache过时就须要从后面server取新颖内容。

reload-into-ims

refresh_pattern [-i] regexp min percent max [options]

正常情形可以使用 reload-into-ims。它实在是强行节制对象的超时时间,这违背了http协定的精力,然而在带宽较窄的场所,可以提高超显系统相应时间。 

4、缓存策略阐明

该选项导致squid在检查Expires头部之前,先检查min值。这样,一个非零的min时间让squid返回一个未确认的cache命中,即便该响应筹备过期。


1) If ((CURRENT_DATE-DATE(就是LM里定义的时间)) < min),大型门户网站架构设计的可伸缩性,cache是新鲜的

常用的多少个参数的意思

refresh_pattern 的算法如下:(当前时间定义为CURRENT_DATE)

改选项导致squid在检讨LM-factor百分比之前先检查min值。

3、基于squid for windows下的反向代办    为了佐证本方案是经由实际考验的,并且是通用的行业方案,以下是我通过抓包得到的一些大范围网站实际应用: --网易 Server nginx Date Wed, 10 Mar 2010 02:25:39 GMT Content-Type text/html; charset=GBK Last-Modified Wed, 10 Mar 2010 02:24:45 GMT Vary Accept-Encoding Expires Wed, 10 Mar 2010 02:27:39 GMT Cache-Control max-age=120 Content-Encoding gzip Age 49 X-Cache HIT from cache.163.com Via 192.168.51.39.nginx, 1.0 cache.163.com (squid/3.0.STABLE23) Connection close
--腾讯 Server nginx/0.6.39 Date Wed, 10 Mar 2010 02:26:48 GMT Content-Type text/html; charset=GB2312 Vary Accept-Encoding, Accept-Encoding Expires Wed, 10 Mar 2010 02:41:48 GMT Cache-Control max-age=900 Content-Encoding gzip Age 313 X-Cache HIT from rainny.qq.com Via 1.0 rainny.qq.com:80 (squid/2.6.STABLE5) Connection close

----搜狐 Date Wed, 10 Mar 2010 02:41:40 GMT Server Apache/1.3.39 (Unix) mod_gzip/1.3.26.1a Vary Accept-Encoding,X-Up-Calling-Line-id,X-Source-ID,X-Up-Bearer-Type Cache-Control max-age=70 Expires Wed, 10 Mar 2010 02:42:50 GMT Last-Modified Wed, 10 Mar 2010 02:41:39 GMT Content-Type text/html Age 9 X-Cache HIT from 17376722.22226606.29245568.sohu.com Via 1.0 17376722.22226606.29245568.sohu.com:80 (squid) Connection close

4、其它
二、SQUID简介

SQUID 简略说来是基于UNIX下开发的为WEB运用加速的一个开源软件。SQUID已经广泛在基于nix体系下的WEB利用中使用,例如:新浪、网易都使用该软件,其中SQUID FOR WINDOWS是在WINDOWS下使用。SQUID通过哈希算法在磁盘上树立目录,将第一次恳求的信息,存在指定的目录下,供其下次存取,此外SQUID也会将要求的页面信息缓存在内存中,当客户端拜访某一页面时,如果内存中存在,则直接命中CACHE;假如内存中不存在,则到CACHE目录下获取,否则到后真个WEB  SERVER获取。
SQUID 特色:
1、SQUID沿继了nix下配置的作风,可能用惯了WINDOWS的用户首次使用会有些不适。 2、SQUID包含了一系列的配置策略,认证、访问把持、缓存设置、URL抓取、日志管理、磁盘治理、群集等。 3、SQUID能够通过refresh_pattern策略设置请求的URL可缓存的内容,生效时间(详见文档)。

override-lastmod


(责任编辑:网站建设)
大规模网站架构之WEB加速器SQUID(二)相关文章
上一篇:大流量、高并发的网站的底层系统架构 下一篇:大规模网站架构实战之体系结构(一)
回到顶部