IPTV中的EPG前端優化


先看一下IPTV相關情況:

l 目前TPTV市場情況

a) 截止今年2月,全國IPTV總用戶數達3630.2萬,我國移動互聯網用戶規模接近9億,人均月接入量近300M,8M寬帶達半數,光纖近4成。

clip_image001

圖 1我國整體數字電視轉換情況

clip_image002

圖 2各省數字電視用戶規模及有線數字化程度

b) 今年 3 月通信業經濟運行情況顯示,三家基礎電信企業電信業務總量完成1810.1 億元,同比增長 22.7%,比同期增速高 7.7 個百分點;

l 中國目前市場上電信IPTV機頂盒主要有:【標清】:華為、中興、長虹、UT、MOTO、烽火、大亞、同洲、九聯、貝爾、創維、朝歌、大華、數源。【高清】:華為、中興、MOTO、大亞、朝歌、烽火、同洲、海信、創維、凱天、UT、長虹、貝爾、飛越、九聯、數源。

從上面可以看出來,以后會對IPTV的要求會越來越高,EPG前端優化時一要考慮服務器的承載能力,二要考慮機頂盒性能及兼容問題。

【准備工作】:考慮環境特殊性,需要做好以下幾個准備:硬件:PC、機頂盒、網絡集線器(也就是HUB,也可以使用鏡像功能的交換機Switch)。軟件:Chrome、Wireshark。沒有遠程環境,這些都得用上,如果有遠程調試環境HUB和Wireshark可以不需要。

一、 減少請求數:一般一個頁面最好在5個以內的請求,當請求達到10個以上,速度明顯慢很多。如何減少請求數呢?

1. 減少圖片數量,可將多張圖片整合在一起,每一張圖片都是一個請求。

2. 絕對不要存在請求不到的資源,也就是不能存在HTTP 404資源。

3. 減少iframe的請求數。

4. 減少AJAX的請求。

5. 通過AJAX異步進行延遲加載資源。

6. 合並javascript和CSS。

二、 JS代碼

1. 盡量不要使用JQuery,大部分機頂盒不支持。

2. 合並並最小化JAVASCRIPT。

3. 將小的js內嵌到頁面里。

4. 注意機頂盒對按鍵的兼容性,一般標清只支持onkeypress,大多數不支持onkeydown,如果嘗試使用會造成機頂盒卡死。如果兩種按鍵都支持可以JS進行按鍵判斷讓其只執行一次按鍵。

5. 盡量使用AJAX的GET異步請求,少用POST請求。

6. 盡量使用for,而不是each。

7. 盡量少使用eval。

8. 盡量使用getElementById去訪問,不要使用getElementsByName、getElementsByClassName、getElementsByTagName,大部分機頂盒不兼容這些方法。

9. 盡量使用join方法去拼接字符,少用concat函數,或者+= 這樣的運算符。

10. 重寫系統事件時都盡量都返回false或0、null,比如系統按鍵、播放等事件。

11. 將共用的js 抽出出來放在外部供其它頁面調用。

三、 圖片:

1. 透明效果的圖片盡量使用png、少使用gif。

2. 壓縮jpg,刪除jpg中不必要的信息。

3. 不能使img的src留空,因為有一些機頂盒會進行額外的請求,更不能設置一個不存在的值。

4. 不要在EPG前端縮放圖片大小,圖片可以按實際尺寸設計,也就是在img標簽中盡量不要存在width、height屬性。

5. 延遲加載圖片,不是所有圖片馬上呈現,可按需顯示圖片。

四、 CSS

1. 避免CSS @import,@import大部分機頂盒不支持,應使用link。

2. 將小的CSS內嵌到頁面里。

3. 合並並最小化CSS。

4. 將CSS壓縮。

5. 干掉多余不需要的CSS。

五、 Javascript

1. 盡量少使用document.write。

2. 延遲加載javascript。

3. 調整JS順序,將用在onload的盡量放在html文件后面。

4. 將JS壓縮。

5. 不能使用event作函數名。

六、 Java

1. 禁用session,當不需要session時<%@ page session="false"%> 。

2. 盡量使用<%@ include file=”xxx.jsp” %>,少使用<jsp:include page="xxx.jsp"/>。

3. 盡量使用 java去獲取URL的參數,JS獲取相對比較麻煩而且慢。

七、 不能通過前端進行優化的:

1. 做異步請求時,服務器的響應頭為204時,iframe和ajax都可能解決不了問題,都可能出現重復請求,只是ajax可以表現出色一點。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM