自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

ETag負(fù)載均衡的相關(guān)問(wèn)題

網(wǎng)絡(luò) 網(wǎng)絡(luò)優(yōu)化 網(wǎng)絡(luò)運(yùn)維
本文對(duì)負(fù)載均衡環(huán)境下的ETag問(wèn)題進(jìn)行了介紹,包括文件的節(jié)點(diǎn),大小,時(shí)間等修改內(nèi)容,還有模塊的設(shè)置等相關(guān)的敘述。

一般的網(wǎng)站我們都會(huì)使用服務(wù)器負(fù)載均衡環(huán)境來(lái)支撐我們的業(yè)務(wù),那么,在這個(gè)環(huán)境下,ETag的相關(guān)問(wèn)題我們就需要單獨(dú)來(lái)討論一下了。那么,具體的內(nèi)容還是讓我們從文章中來(lái)了解一下吧。

在負(fù)載均衡環(huán)境中(LVS, LoadBalance)為了減少瀏覽器數(shù)據(jù)的重復(fù)請(qǐng)求操作,一般需要設(shè)置 Http Header 的 Etage 和 Expires 告訴瀏覽器請(qǐng)求數(shù)據(jù)是否已過(guò)期。以下內(nèi)容主要考慮Apache+squid 環(huán)境

ETag Header是文件修改時(shí)間、文件大小和inode號(hào)生成的校驗(yàn)(checksum),在多臺(tái)服務(wù)器的負(fù)載均衡環(huán)境下會(huì)因部署內(nèi)容的inode節(jié)點(diǎn)差異造成 ETag 的不同,在多臺(tái)WEB前端做負(fù)載均衡的情況下,會(huì)因?yàn)檎?qǐng)求同一個(gè)數(shù)據(jù)但不同機(jī)器的 ETag 而影響了響應(yīng). 具體表現(xiàn)為用戶在第一次請(qǐng)求某一內(nèi)容時(shí)下載而再次時(shí)瀏覽器會(huì)發(fā)現(xiàn)ETag不同而再次請(qǐng)求下載.。(再次刷新時(shí)查看是否響應(yīng)碼為:304)

對(duì)于這種負(fù)載均衡情況下,Apache可以使用 File Etag 選項(xiàng)配置

Apache的默認(rèn)ETag的值總是由文件的索引節(jié)點(diǎn)(Inode)、大小(Size)、最后修改時(shí)間(MTime)決定

這里我們只需要去掉Inode即可

FileETag MTime Size

具體關(guān)于 FileETag 詳細(xì)內(nèi)容可以查看Apache官方文檔。

Expires用于控制請(qǐng)求文件的有效時(shí)間,當(dāng)請(qǐng)求數(shù)據(jù)在有效期內(nèi)時(shí)客戶端瀏覽器從緩存請(qǐng)求數(shù)據(jù)而不是服務(wù)器端. 當(dāng)緩存中數(shù)據(jù)失效或過(guò)期,才決定從服務(wù)器更新數(shù)據(jù)。
可以使用Apache的mod_expires 模塊來(lái)設(shè)置,這包括控制應(yīng)答時(shí)的Expires頭內(nèi)容和Cache-Control頭的max-age指令

  1. ExpiresActive On  
  2. ExpiresByType image/gif "access plus 1 month" 
  3. ExpiresByType image/jpeg "access plus 1 month" 
  4. ExpiresByType image/x-icon "access plus 1 month" 
  5. ExpiresByType image/png "access plus 1 month" 
  6. ExpiresByType text/html "access plus 30 minutes" 
  7. ExpiresByType text/css "access plus 30 minutes" 
  8. ExpiresByType text/js "access plus 30 minutes" 
  9. ExpiresByType application/x-javascript "access plus 30 minutes" 
  10. ExpiresByType application/x-shockwave-flash "access plus 30 minutes" 

這個(gè)負(fù)載均衡環(huán)境下的以上設(shè)置為圖片文件的有效期為從請(qǐng)求文件開(kāi)始1個(gè)月,html,css,js,flash文件的有效期為從請(qǐng)求文件開(kāi)始30分鐘,這里只是一個(gè)常規(guī)設(shè)置,Apache官方文檔 對(duì)此設(shè)置有詳細(xì)介紹。當(dāng)設(shè)置了expires后,會(huì)自動(dòng)輸出Cache-Control 的max-age 信息,這個(gè)數(shù)值是expires有效期內(nèi)的秒數(shù),(一個(gè)月的數(shù)值為2592000) 在這個(gè)時(shí)間段里,該文件的請(qǐng)求都將直接通過(guò)緩存服務(wù)器獲取,當(dāng)然如果需要忽略瀏覽器的刷新請(qǐng)求(F5),緩存服務(wù)器squid還需要使用 refresh_pattern 選項(xiàng)來(lái)忽略該請(qǐng)求refresh_pattern -i .jpg 1440 50% 10080 reload-into-ims ignore-reload ignore-no-cache ignore-private

以下為實(shí)際輸出的HTTP Header信息

  1. Date Thu, 07 Aug 2008 07:27:57 GMT  
  2. Server Apache  
  3. Last-Modified Fri, 27 Jun 2008 07:18:52 GMT  
  4. Etag "df6-b8c8cf00" 
  5. Accept-Ranges bytes  
  6. Content-Length 3574  
  7. Cache-Control max-age=2592000  
  8. Expires Sat, 06 Sep 2008 07:27:57 GMT  
  9. Content-Type image/jpeg  
  10. Age 34241  
  11. X-Cache HIT from s1.ihompy.com  
  12. Connection keep-alive 

在負(fù)載均衡環(huán)境下,對(duì)于動(dòng)態(tài)頁(yè)面的緩存如果不是頻繁更新的頁(yè)面數(shù)據(jù),可以在squid緩存,只需要注意兩點(diǎn)

1. session : 對(duì)于需要緩存的數(shù)據(jù),一定要關(guān)閉session防止在http header 中包括session id 字段

2. Last-Modified 和 Expires 標(biāo)記:一般般純靜態(tài)頁(yè)面本身都會(huì)有Last-Modified信息,這是由WEB服務(wù)器獲取文件的最后修改時(shí)間生成的,而動(dòng)態(tài)頁(yè)面需要默認(rèn)的輸出內(nèi)容是

  1. Date Thu, 07 Aug 2008 16:58:37 GMT  
  2. Expires Thu, 19 Nov 1981 08:52:00 GMT  
  3. Last-Modified Thu, 07 Aug 2008 16:58:37 GMT 

這里的 Last-Modified 時(shí)間和請(qǐng)求文件的時(shí)間相同,也就是說(shuō)該文件總是聲明為最新的,在程序中需要輸出Last-Modifed 和 Expires信息,比如php

  1. header('Last-Modified: ' . gmdate("D, d M Y H:i:s") . ' GMT');  
  2. header('Expires: ' . gmdate ("D, d M Y H:i:s", time() + 3600*24). " GMT"); 

以上信息設(shè)置php文件的過(guò)期時(shí)間為請(qǐng)求該文件的時(shí)間后的24小時(shí)(3600*24)

責(zé)任編輯:佟健 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-04-28 15:49:24

防火墻負(fù)載均衡

2010-05-10 14:55:35

網(wǎng)絡(luò)負(fù)載均衡

2010-04-20 15:13:08

負(fù)載均衡

2010-04-20 16:06:12

有線負(fù)載均衡

2010-05-05 17:53:56

web負(fù)載均衡

2010-04-20 15:59:20

無(wú)線局域網(wǎng)負(fù)載均衡

2010-05-10 14:13:26

2017-07-03 08:08:25

負(fù)載均衡分類(lèi)

2010-05-05 23:10:35

負(fù)載均衡器

2009-11-05 15:39:39

負(fù)載均衡

2010-04-30 09:40:41

2021-04-21 14:56:28

負(fù)載均衡高并發(fā)優(yōu)化技術(shù)架構(gòu)

2011-12-02 22:51:46

Nginx負(fù)載均衡

2018-11-07 10:12:37

2010-05-10 16:15:34

2010-04-28 17:39:26

網(wǎng)絡(luò)負(fù)載均衡

2010-05-10 14:07:26

負(fù)載均衡器

2010-04-22 21:24:28

2010-05-10 15:58:14

porxy負(fù)載均衡

2010-04-20 12:16:05

NAT負(fù)載均衡
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)