![]() |
||
Major Member
![]() 加入日期: Feb 2003
文章: 247
|
實際用過就知道了
當firefox放在硬碟跟ramdisk之下 當你記憶體使用量從500MB飆升到1.5G以上之後 你就會選擇用RAMDISK了 |
|||||||
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2006 您的住址: Taipei
文章: 8,344
|
小弟只能說, 我看過網路快取設備雖不多, 但快取沒看過user設超過兩周的, 很多預設的cache
也不過只放24hrs意思一下. 網頁物件TTL的長短有兩個來源, 一個是原網站自己已經在 http表頭指定, 例如TTL=0 就是告知從不快取(well....你還是有辦法可以硬cache下來). 另一個就是你在網路快取設備定義http物件的TTL 不短於xxx時間,與不長於xxx時間, 在這時間內它就會以快取物件來提供, 如果一個static content萬年不改可能無所謂, 但是TTL拉太長的風險就是會看到舊資料, 若一個freeware, 各版檔名都一樣但每月更新, 你快取設三個月, 可能仍會拿到三個月前的舊版本. 您的快取容量即使可以設超大, 可能 早就有一堆資料已過時不可用, 或是你硬要用但已是過時舊資料. 由於無法預先知道什麼content可不可以快取多久, 所以實務上不會去設太長的時間, 畢竟頁面正確性還是比速度重要,一方面也是為了避免cache累積過大造成 hit rate 偏低. 一般ISP服務客戶的樣本數以數十萬至數百萬計, 所以一份快取就算只用12小時, 但若能 給其他幾千個用戶重複利用, 也可能節省數百GB的傳輸量, 例如有熱門的影片, 程式下載. 如果您的快取機制有那種智能可先分辨該物件是否有更新而決定是否要使用快取, 那也要它先主動去要過新資料再跟既有快取比對過, 才能決定是要以cache回應還是重拉. 這種東西有商用產品, 是否有免費的軟體可用我不清楚, 不過單純靠browser應做不到. |
||
![]() |
![]() |
Major Member
![]() 加入日期: Sep 2006
文章: 143
|
問題是現在瀏覽器預設的快取太小了 (都不超過 100M),
導致快取的資料過沒多久就被其它新的網頁蓋過去, 當使用者要再度瀏覽的時候,就必須重新下載, 這增加了網站的流量負擔,也降低了上網的整體流暢性, 我提到的那篇文章的作者也是支持這個觀點。 他甚至說切個 5G 當快取都不為過。 另外一個問題是瀏覽器對快取資料的汰換機制,效率太差幾乎沒有進步。 有興趣的網友可以研究在日本頗有人氣的本地快取軟體 Polipo 優點是針對連接伺服器的優化及快取資料的處理效率比瀏覽器好,有助於提高上網的效率/速度。 http://www.pps.jussieu.fr/~jch/software/polipo/ 有熱心的日本網友給這個軟體寫了 GUI 介面,方便設定操作 http://serennz.sakura.ne.jp/toybox/solipo/?en 此文章於 2010-10-08 05:47 PM 被 AlanLive 編輯. |
![]() |
![]() |
Major Member
![]() 加入日期: Jan 2005
文章: 244
|
看到樓主的發文風格,讓我想到在ptt的pc_shopping板裡有一篇文章感覺滿像的:
文章代碼(AID): #1CfoOoF8 (PC_Shopping) [ptt.cc] □ [閒聊] 什麼樣的 CPU 能流暢的跑動這個影片? 發文者好像也是同一人… 不想開BBS看文章的,請點下面網址: http://ppt.cc/;MVq (推文內容可能會比較舊) 還是一句話,觀念能否正確,是需要聽進其他網友的意見,好嗎? 此文章於 2010-10-08 06:29 PM 被 k7system 編輯. |
![]() |
![]() |
Major Member
![]() 加入日期: Sep 2006
文章: 143
|
引用:
都是我發的沒錯,別人的觀念是否要聽進去是個人的事, 別人講的不一定就是正確,自由心證就好, 多看到各種不同的見解也是好事, 能直接一刀見血的把我提出的觀念推翻才是我樂見的。 現代人缺乏打破砂鍋問到底的能力, 一些陳舊的觀念就這樣擱置了許久, 網路免費提供這麼好的平台不用白不用。 此文章於 2010-10-08 06:52 PM 被 AlanLive 編輯. |
|
![]() |
![]() |
*停權中*
加入日期: Jan 2007
文章: 20
|
Firefox 4已經對快取有改良
|
![]() |
![]() |
Junior Member
![]() ![]() ![]() 加入日期: Nov 2006 您的住址: earth
文章: 987
|
引用:
看了一下大概問個問題: 你會引用該作者的"5G論"表示你多少也有點贊同這論點 那我很好奇,如同前面所言關於網頁資料過時的問題 假如就讓你設5G做網頁快取好了,一般網頁快取一天有可能用到這麼多嗎? 當然這不是重點,重點想問的是,這5G快取過時的比率有多少? 這才決定其價值吧... 小弟我只是覺得,快取那麼大但都是過時資料似乎不是很有用 所以是為了省那一點點的時間vs資料正確性 感覺上現在delay的時間似乎沒大到足以忽略資料正確性的問題? 另外FF之前之所以外取比較小,"我猜"應該是過往網路上的資料並沒現今的大(以前FLASH沒很多阿) 所以新版開始因應現況增大應該是正確的,但是有沒有如您所言要增加"那麼多",小弟認為似乎現在網頁資料"需要快取"的部分應該沒那麼多... |
|
![]() |
![]() |
Major Member
![]() 加入日期: Sep 2006
文章: 143
|
引用:
主要是現在硬碟實在太便宜了,家裡有兩三台電腦的人也不在少數 弄個 5 ~ 10G 的快取伺服器,其實是很划算的 個人認為快取的命中率有超過 20% 就已經有賺到了 我自己一個人使用就超過 30% 了 當然是要把快取規則設的好的情況下才能有這麼高的命中率 如果能順利快取現在氾濫的 CDN 網路,那麼命中率要上到 50% 也不是夢想 命中率 50% 等於網頁的一半是從硬碟「直接」讀取出來的 怎麼想都比從遠端伺服器取資料要來的快 除了像股票網站那種的動態網頁外 只要發出過一次 request 的請求後,在 data 被遠端伺服器更新之前 都不要再發出而直接從快取返回結果給使用者,是最理想的狀態 此文章於 2011-04-14 11:08 PM 被 AlanLive 編輯. |
|
![]() |
![]() |
Major Member
![]() 加入日期: Sep 2006
文章: 143
|
另外,過時的快取檔案並不是沒有用處的,當快取伺服器收到瀏覽器的
請求時,先確認有沒有快取,有但發現已經超過伺服器預設的保存期限 這個時候,快取伺服器只要發送一個非常小的封包去問遠端伺服器 這個舊的資料是不是真的過期了,伺服器回答是的話那就抓新的回來 如果不是的話那就直接把這份資料返回給使用者 整個重點在這個「詢問」的封包比起整個重新傳送的封包要來的小(省) 整體的回應速度自然也比較快 |
![]() |
![]() |
Elite Member
![]() ![]() ![]() ![]() ![]() 加入日期: Dec 2006 您的住址: Taipei
文章: 8,344
|
過期的資料拿來用就是錯誤顯示, 知道不能拿來用也是無用. 我不知道它的用處在哪裡.
要看是哪種快取伺服器, 專屬式的高階設備才比較有豐富的機制來做智能快取, 一般 免費windows/開源的 頂多給你設多久時間過期, 那是由你決定, 跟遠端伺服器無關, 或是物件自己就帶逾期時效資訊, 逾時就是自己重拉, 不會去問遠端伺服器什麼真的過 期假的過期. 都是下回來再做比對, 新的蓋過舊的. 有的快取設備是會在背景檢查, 主動幫你更新過期的資料, 以便你要用的時候可以靠快取 這種時候網路的下載量其實還是很多, 只是都由快取去發起, 你享受結果而已. 但如果你沒有這種等級的設備, 只靠瀏覽器, 一般proxy,說再多也只是看得到吃不到. 反到會誤導不是很清楚的人, 以為隨便架一個proxy, 設一設cache都有這種好處. 另外, 就算會快, 也要看實質的邊際效益多大. 以我自己用browser cache為空的狀態, 只要網路快, 看網頁就會快, 一頁合理設計的首頁頂多幾百k大小, 有個穩定的網路跟 沒有塞車的網站+執行有效率的瀏覽器比有幾TB快取都要關鍵, 倒是把cache設在 RAMDISK就能比設在硬碟感覺出變得較快,即使那個cache folder一開始是空的. |
![]() |
![]() |