## 服務端優化
> * 避免404。
> * 更改404錯誤響應頁面可以改進用戶體驗,但是同樣也會浪費服務器資源。
> * 指向外部`JAVASCRIPT`的鏈接出現問題并返回404代碼。
> * 這種加載會破壞并行加載。
> * 其次瀏覽器會把試圖在返回的404響應內容中找到可能有用的部分當作JavaScript代碼來執行。
> * 刪除重復的`JAVASCRIPT`和`CSS`。
> * 重復調用腳本缺點。
> * 增加額外的HTTP請求。
> * 多次運算也會浪費時間。在IE和Firefox中不管腳本是否可緩存,它們都存在重復運算`JAVASCRIPT`的問題。
> * `ETags`配置`Entity`標簽。
> * `ETags`用來判斷瀏覽器緩存里的元素是否和原來服務器上的一致。
> * 與`last-modified date`相比更靈活。 >如某個文件在1秒內修改了10次,`ETags`可以綜合`Inode`(文件的索引節點`inode`數),`MTime`(修改時間)和`Size`來精準的進行判斷,避開`UNIX`記錄`MTime`只能精確到秒的問題。服務器集群使用,可取后兩個參數。使用`ETags`減少`Web`應用帶寬和負載
> * 權衡DNS查找次數
> * 減少主機名可以節省響應時間。但同時也會減少頁面中并行下載的數量。
> * `IE`瀏覽器在同一時刻只能從同一域名下載兩個文件。當在一個頁面顯示多張圖片時,`IE`用戶的圖片下載速度就會受到影響。
> * 通過Keep-alive機制減少TCP連接。
> * 通過CDN減少延時。
> * 平行處理請求(參考BigPipe)。
> * 通過合并文件或者Image Sprites減少HTTP請求。
> * 減少重定向( HTTP 301和40x/50x)。