什么文件適合用CDN加載
CDN主要適用于一些靜態資源文件的加載,比如javascript文件、css樣式文件、字體、圖片、視頻等其他資源文件。這些文件我們往往放到自己的一些前端服務器中做處理(nginx),使用CDN就可以免除前端服務器部分工作了。
使用CDN的好處
提升網站的性能
使用CDN最大的益處是為你的服務器提供“分流”,節省了你的帶寬,減少了服務器的壓力,很多CDN廠商提供的資源訪問服務加載速度還是比較快的(墻內除外)。
文件緩存
對于那些被普遍使用的資源文件(比如jquery),如果用戶在訪問你網站之前已經訪問過其他使用該CDN的網站,那么在用戶瀏覽器中已經對該資源文件做了緩存,對于你的網站來說,這是個不錯的性能提升!
高可用
相信微軟、谷歌、雅虎的服務器相對于你自身的服務器來說更加可靠些,他們提供了高可用、低網絡延遲,降低了數據包的丟失幾率。你無需擔心服務器宕機或者網絡延遲的問題。
資源文件版本管理
對于某些資源文件的升級(css,js lib),你無需每次通過修改程序來加載最新的版本,只需要在加載CDN資源文件時指定始終加載"lastest"文件就可以。
CDN使用小貼士
省略URL的協議,去掉http:或者https:,這樣就免去了協議的適配問題。如:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
以防萬一,提供一個備用的本地資源文件。
最近的google墻的很厲害,導致很多使用wordpress的站點,加載速度很慢,甚至直接導致頁面無法加載,安全起見,我們提供一個本地的備份資源文件:
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
document.write(unescape("%3Cscript src='/js/jquery-1.4.2.min.js' type='text/javascript'%3E%3C/script%3E"));
}
</script>
一些常用的CDN
Google: https://developers.google.com/speed/libraries/devguide
Microsoft: http://www.asp.net/ajaxlibrary/cdn.ashx
jQuery: http://jquery.com/download/
cdnjs: http://cdnjs.com
OSSCdn: http://osscdn.com