成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ETag負載均衡的相關問題

網絡 網絡優化 網絡運維
本文對負載均衡環境下的ETag問題進行了介紹,包括文件的節點,大小,時間等修改內容,還有模塊的設置等相關的敘述。

一般的網站我們都會使用服務器負載均衡環境來支撐我們的業務,那么,在這個環境下,ETag的相關問題我們就需要單獨來討論一下了。那么,具體的內容還是讓我們從文章中來了解一下吧。

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

ETag Header是文件修改時間、文件大小和inode號生成的校驗(checksum),在多臺服務器的負載均衡環境下會因部署內容的inode節點差異造成 ETag 的不同,在多臺WEB前端做負載均衡的情況下,會因為請求同一個數據但不同機器的 ETag 而影響了響應. 具體表現為用戶在第一次請求某一內容時下載而再次時瀏覽器會發現ETag不同而再次請求下載.。(再次刷新時查看是否響應碼為:304)

對于這種負載均衡情況下,Apache可以使用 File Etag 選項配置

Apache的默認ETag的值總是由文件的索引節點(Inode)、大小(Size)、最后修改時間(MTime)決定

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

FileETag MTime Size

具體關于 FileETag 詳細內容可以查看Apache官方文檔。

Expires用于控制請求文件的有效時間,當請求數據在有效期內時客戶端瀏覽器從緩存請求數據而不是服務器端. 當緩存中數據失效或過期,才決定從服務器更新數據。
可以使用Apache的mod_expires 模塊來設置,這包括控制應答時的Expires頭內容和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" 

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

以下為實際輸出的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 

在負載均衡環境下,對于動態頁面的緩存如果不是頻繁更新的頁面數據,可以在squid緩存,只需要注意兩點

1. session : 對于需要緩存的數據,一定要關閉session防止在http header 中包括session id 字段

2. Last-Modified 和 Expires 標記:一般般純靜態頁面本身都會有Last-Modified信息,這是由WEB服務器獲取文件的最后修改時間生成的,而動態頁面需要默認的輸出內容是

  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 時間和請求文件的時間相同,也就是說該文件總是聲明為最新的,在程序中需要輸出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"); 

以上信息設置php文件的過期時間為請求該文件的時間后的24小時(3600*24)

責任編輯:佟健 來源: 互聯網
相關推薦

2010-04-28 15:49:24

防火墻負載均衡

2010-05-10 14:55:35

網絡負載均衡

2010-04-20 15:13:08

負載均衡

2010-04-20 16:06:12

有線負載均衡

2010-05-05 17:53:56

web負載均衡

2017-07-03 08:08:25

負載均衡分類

2010-05-10 14:13:26

2010-04-20 15:59:20

無線局域網負載均衡

2010-05-05 23:10:35

負載均衡器

2009-11-05 15:39:39

負載均衡

2010-04-30 09:40:41

2011-12-02 22:51:46

Nginx負載均衡

2018-11-07 10:12:37

2021-04-21 14:56:28

負載均衡高并發優化技術架構

2010-04-28 17:39:26

網絡負載均衡

2010-05-10 16:15:34

2010-04-22 21:24:28

2010-05-10 14:07:26

負載均衡器

2010-04-25 19:14:32

Radware負載均衡

2010-05-06 16:55:11

Python負載均衡
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 视频一区在线观看 | 国产精品亚洲成在人线 | 欧美成人在线影院 | 美日韩免费视频 | 国产精品一区二区三区在线 | 免费看黄色小视频 | 精品久久国产 | 日韩欧美一区二区三区免费观看 | 国产精品久久久久aaaa | 国产精品免费在线 | 香蕉久久a毛片 | 美女激情av | 日本久久精品视频 | 亚洲成人毛片 | 手机av在线 | www.五月婷婷.com | 欧美中文字幕在线观看 | 亚洲国产精品久久久 | av入口| 中文字幕在线视频一区二区三区 | 欧美a级成人淫片免费看 | 精品一区二区久久久久久久网站 | 国产一级电影在线 | 中文福利视频 | 成人免费视频观看 | 91porn成人精品 | 午夜一级黄色片 | 波多野结衣一区二区 | 中文字幕一区二区三区在线观看 | 91高清视频在线观看 | 免费看国产精品视频 | 中文字幕在线网 | 亚洲精品一区二区三区在线 | 在线观看国产 | 亚洲国产一区视频 | 亚洲欧洲日韩精品 中文字幕 | 国产精品久久久久不卡 | av一区二区三区 | 视频在线一区 | 不卡一区 | 中文字幕精品一区久久久久 |