[發明專利]一種異常頁面的進程控制方法、裝置和系統有效
| 申請號: | 201210176651.7 | 申請日: | 2012-05-31 |
| 公開(公告)號: | CN102722559A | 公開(公告)日: | 2012-10-10 |
| 發明(設計)人: | 孫鵬;劉敏;任寰 | 申請(專利權)人: | 奇智軟件(北京)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司 11319 | 代理人: | 蘇培華 |
| 地址: | 100016 北京市朝陽*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 異常 頁面 進程 控制 方法 裝置 系統 | ||
技術領域
本發明涉及數據處理領域,特別是涉及一種異常頁面的進程控制方法、裝置和系統。
背景技術
瀏覽器內核也就是瀏覽器所采用的渲染引擎,渲染引擎決定了瀏覽器如何顯示網頁的內容以及頁面的格式信息,目前的瀏覽器的內核是多線程的,它們在內核制控下相互配合以保持同步,一個瀏覽器至少實現以下三個常駐線程:
1、Javascript引擎線程(簡稱JS線程)是基于事件驅動單線程執行的,JS引擎一直等待著任務隊列中任務的到來然后加以處理;
2、GUI(Graphical?User?Interface,圖形用戶界面)渲染線程負責渲染瀏覽器界面,當界面需要重繪(repaint)或由于某種操作引發回流(reflow)時,該線程就會執行。GUI渲染線程與JS引擎是互斥的,當JS引擎執行時GUI線程會被掛起,GUI更新會被保存在一個隊列中等到JS引擎空閑時立即被執行;
3、事件觸發線程將觸發事件添加到待處理隊列的隊尾,等待JS線程的處理。
當前互聯網高度發達,各種各樣網頁層出不窮,網頁開發工程師也層次不齊,部分網頁在設計的時候對JS、Flash等技術運用不當,僅僅單方面實現了Web需求,做出來的頁面與瀏覽器不兼容,并且事后也未進行嚴格的兼容性測試,因此出現了大量的與瀏覽器不兼容的Web頁面,這類容易導致瀏覽器崩潰或卡死的頁面稱之為高危頁面。
例如,網頁A中JS腳本無限的循環,長時間占用著CPU就會掛起瀏覽器的GUI更新,而后面的事件響應也被排在隊列中得不到處理,從而造成了瀏覽器無法響應用戶操作進入卡死死狀態;又如,網頁B中JS腳本進行了大量的DOM操作,一旦JS調用結束就會馬上進行一次GUI渲染,然后才開始執行下一個任務,所以JS中大量的DOM操作也會導致事件響應緩慢甚至真正卡死瀏覽器。又如,網頁C中Flash?AS腳本陷入死循環導致系統資源耗盡,瀏覽器卡死。訪問這類頁面很容易導致瀏覽器崩潰卡死,導致整個瀏覽器無法使用。
發明內容
本發明所要解決的技術問題是提供一種異常頁面的進程控制方法,避免用戶訪問高危頁面時瀏覽器的正常使用受到影響。
本發明還提供了一種異常頁面的進程控制裝置和系統,用以保證上述方法在實際中的應用及實現。
為了解決上述問題,本發明公開了一種異常頁面的進程控制方法,包括:
獲取異常頁面的頁面地址名單,所述異常頁面包括使瀏覽器崩潰和/或卡死的頁面;
判斷用戶請求訪問的頁面地址是否在所述頁面地址名單中;
若是,則由瀏覽器主進程創建頁面獨立子進程,并由所述頁面獨立子進程渲染所述請求訪問的頁面地址對應的頁面。
優選的,所述異常頁面的地址名單存儲在瀏覽器端或服務器端。
優選的,所述服務器端的地址名單由至少一個瀏覽器端收集并上傳到服務器端。
優選的,所述瀏覽器端的地址名單由瀏覽器端收集,或從服務器端下載,服務器端保存至少一個瀏覽器端收集的地址名單。
優選的,所述瀏覽器端收集異常頁面的頁面地址名單的步驟包括:
監控瀏覽器各個頁面的渲染時間,無效句柄和無效指針;
若某個頁面的渲染時間大于第一預設閥值,或所述無效句柄/無效指針在預設時間段內出現的次數超過第二預設閥值,則判定該頁面為導致瀏覽器崩潰的異常頁面;
將該頁面的地址添加到所述異常頁面的頁面地址名單中。
優選的,所述瀏覽器端收集異常頁面的頁面地址名單的步驟還包括:
按照預設頻率向瀏覽器的各個頁面發送檢測消息;
若未收到所有頁面對檢測消息的回應,則判定該頁面為導致瀏覽器卡死的異常頁面;
將未回應的頁面的地址添加到所述異常頁面的頁面地址名單中。
優選的,所述瀏覽器端收集異常頁面的地址名單的步驟還包括:
接收用戶通過瀏覽器反饋的,使瀏覽器崩潰和/或卡死的頁面地址,并添加到所述異常頁面的頁面地址名單中。
優選的,所述異常頁面的頁面地址名單中,部分或全部地址進一步包括有異常頁面的異常信息,所述異常信息標明是Flash異常和/或Javascript異常。
優選的,所述方法通過以下步驟確定異常信息:
若該頁面的渲染時間大于第一預設閥值,則所述異常信息為Javascript異常;
若所述無效句柄/無效指針在預設時間段內出現的次數超過第二預設閥值,或頁面的Flash在預置的Flash黑名單中,則所述異常信息為Flash異常。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于奇智軟件(北京)有限公司,未經奇智軟件(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210176651.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種LED燈用電源箱
- 下一篇:液壓系統、液壓系統的控制方法和工程機械





