符合中小企业对网站设计、功能常规化式的企业展示型网站建设
本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...
商城网站建设因基本功能的需求不同费用上面也有很大的差别...
手机微信网站开发、微信官网、微信商城网站...
这期内容当中小编将会给大家带来有关ASP.NET中怎么优化反向代理缓存,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联建站网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站制作、网站设计、外贸网站建设,重庆APP软件开发以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联建站深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!ASP.NET怎么反向代理缓存优化
1:将varnish配置为IIS的代理
首先需要为varnish准备配置文件,比如,可以为default.vcl,内容如下:
backenddefault
{
.host=“192.168.0.77”;
.port=“80”;
}
subvcl_fetch
{removeberesp.http.Set-Cookie;
}
subvcl_recv
{
removereq.http.Cookie;
}
在我们要示范的这个实例中,这3个配置都不能少,如下,
backenddefault:指定我们的IIS站点的地址和端口;
subvcl_fetch:这是一个varnish函数,它varnish从后端服务器,也就是IIS中获得数据后被调用;
subvcl_recv:varnish函数,表示客户端请求杠杠到达反向代理服务器时被调用;
由于varnish默认在碰到http头中含有Cookie相关标识时直接忽略缓存,所以我们需要上面的两个函数针对Cookie做特殊处理。当然,目前这两个函数只是简单而野蛮的删除标识,实际的应用中我们可能需要根据实际情况为它们加上一些判断条件。
ASP.NET怎么反向代理缓存优化
2:启动varnish
下面的命令为我启动varnish:
C:varnishin>varnishd-a:8011-T:8088-fc:/varnish/etc/default.vcl-sfile,c:/varnish/var/cache,100M
-a:8011表示,让varnish监听在8011端口。由于我测试环境下varnish和iis是在同一台机器上,所以IIS已经占用了80,我这里只有使用其它端口。
-T是为varnish指定一个管理端口;
-f指定所要使用的配置文件;
后面的参数只是让varnish使用文件缓存,大小为100M,当然,应该根据实际情况指定大小;
启动varnish后,如果我们请求http://地址:端口/,就可以等到200OK状态码,那表示varnish已经在正确滴接受请求。
3:一个实例
创建asp.net页面,内容如下:
protectedvoidPage_Load(objectsender,EventArgse)
{this.Response.AddHeader(“Cache-Control”,“max-age=60”);
this.Response.AddHeader(“Last-Modified”,DateTime.Now.ToString(“U”,DateTimeFormatInfo.InvariantInfo));
DateTimeIfModifiedSince;
if(DateTime.TryParse(this.Request.Headers.Get(“If-Modified-Since”),outIfModifiedSince))
{if((DateTime.Now-IfModifiedSince.AddHours(8))。Seconds<60) {Response.Status=“304NotModified”; Response.StatusCode=304; return; } } stringconn=“DataSource=192.168.0.77;InitialCatalog=luminjidb;UserId=sa;Password=sa;”; using(DataSetds=Common.SqlHelper.ExecuteDataset(conn,CommandType.Text,“selecttop1*fromNameTba,DepTbbwherea.DepID=b.IDORDERBYNEWID()”)) { varresult=ds.Tables[0].Rows[0][“name”].ToString(); Response.Write(result); } } 对该页面进行压力测试,100个用户,1000个请求,得到的结果如下: 如果没有缓存,则结果如下: 可以看到吞吐率有非常大的提升。
上述就是小编为大家分享的ASP.NET中怎么优化反向代理缓存了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。