這樣吧,我先開個頭,大家可以一起參與!
我首先說說在項目中可以使用緩存的地方。
我這里用一個圖可能表述的更加清楚!
如圖:
既然我們談緩存這個話題,那么我們就把這個話題談細致一點,因為很多時候:談大帽子的話很多人都會滔滔不絕,但是一到真實的細節與落實的地方,很多人就偃旗息鼓了,呵呵 有點”吹起來,天下無敵;做起來,一無是處“的感覺。
我們首先就來看看瀏覽器的緩存。
這個好搞啊,做過網站的朋友都知道,這個設置主要就是通過設置:Cache-Control 這個響應頭來實現的,如下:
不同的技術平台,實現的方式不一樣,大家也不要糾結這些平台的差異,只要最后結果是一樣的就OK了,要懷着包容心去看每一種技術,如果連技術的差異性都無法容忍,未必也太小家子氣了,呵呵呵。
例如,在微軟技術的ASP.NET中,可以通過幾種方式來實現:
1.頁面中設置,如下:
2.代碼中設置,如下:
3.IIS中設置,如下:
瀏覽器緩存可以緩存圖片,js,css,當然,還可以把一些數據,通過js對象的形式保存在瀏覽器中。
瀏覽器緩存的問題主要在於圖片,js,css的更新上面。
例如如果我們設置了緩存的時間為1一個月,那么這些資源很有可能就在一個月還沒有到就因為我們發布新的版本而更新了。這個時候,瀏覽器不會知道的,還是會使用老的版本。
這不是我們希望看到的,解決的辦法也是很簡單,如果大家留心點,就會發現很多的站點的js,css是這樣命名的:XXX-1.2.js
這就是通過版本控制來來使得瀏覽器重新下載新的資源。
內容太多,更多請參看:http://www.agilesharp.com/Forum.aspx/t-17
http://bbs.chinaunix.net/thread-3744450-1-1.html