行使页面缓存
发布日期:2023-04-11浏览量:82
在web服务以前部署页面缓存。选择一种缓存零碎并部署它。经由过程缓存和相应之宿世成的动态要求,迅速相应静态对象的挪用,从而低落web服务器的负载。页面缓存是分流动态要求并有用进行扩展的好要领。
页面缓存是装置在web服务器以前的缓存服务器,用于卸载对服务器上的静态和动态对象的要求。该零碎或服务器器的常见名称另有反向代理缓存、反向代理服务器和反向代理。颠末谨慎思索,咱们采用了页面缓存这个术语,由于代理程序还会卖力负载均衡或ssl加速,而咱们只想专注于缓存服务器对可扩展性的影响。被实现的代理缓存如图64所示。页面缓存会处置部分或一切要求,直到它存储的页面或数据过时了,或服务器收到的要求了它没有存储的数据。要求失败叫做缓存未掷中,起因能够是缓存满了,没有空间为最新的要求存储数据,也可以是缓存未满,但要求频次较低或比来重启过。缓存未掷中会被通报给web服务器,web服务器用该要求答复并填充缓存,从而替换缓存中比来很少运用的记载,或者在空缺处写入数据。
在这个准则中,有三个关键点。
第一点,应该在web服务器前实现页面缓存(反向代理程序),如许你就会获得很大的可扩展性。生成动态内容的web服务器的事情量会大大削减,由于计较过的后果(或相应)在适宜的时间被恰本地缓存了。提供静态内容的web服务器不需求查询那些内容,可以少用一些缓存。咱们赞成,静态内容的页面缓存的益处没有动态内容的页面缓存那末大。
只知其一,不知其二点,需求行使正确的http头,确保对内容和查询后果进行最的缓存(当然还要确保营业正确)。
第三点,尽能够插手rfc2616中的另外一个http头,从而最内容的可缓存性。这个新的头是etag,也就是实体标签(entity tag),目的是合营if-none-match有前提地从服务器获得要求。etag是由服务器在阅读器第一次要求一个对象时付与该对象的独一标识符。若是服务器真个改动了,那末服务器会为它分配一个新的erag。假如能被阅读器(客户端)正确地支持,对象和它的etag标签就会被阅读器缓存,之后阅读器向web服务器发送的工f-none-match要求城市包罗该标签。若是标签婚配,服务器会用状况htip304 not modified进行相应。若是该标签与服务器上的纷歧致,服务器会发送更新过的对象以及与之相干的etag-etag是可选的,但如果是要确保在任何特定的网页设计页面或对象的整个网络传输中,页面缓存和代理缓存具备更大的可缓存性,猛烈引荐运用brag。
相关文章: