最昂貴的Javascript代碼緣起:
前一段時間,Opera 瀏覽器公司需要越來越多的伺服器。本身公司預見到 Opera Mini, Opera Link, Opera Turbo 會帶來爆炸性增長,所以要添置 N 台伺服器,減緩伺服器壓力。事實上 Opera 確實迎來了爆炸式增長,可以參見每月公布的全球移動互連網報告。)
由於這些服務都是吃伺服器的,Opera Mini 伺服器要為全球幾千萬手機使用者省流量加速,Opera Turbo 則負責電腦全網加速,Opera Link 頻繁同步保證使用者數千即時更新。所以需要添置的伺服器不是幾台的數量級,管理層批准整個訂單的預算達幾百萬克朗當前匯價1挪威克朗基本等於1元人民幣)。
最昂貴的Javascript代碼的經過:
資訊系統部門的技術控們海皮起來了,這幫人的工作性質決定他們在伺服器身上花的時間比在異性朋友身上都多。經過他們的上躥下跳,公司採購到了收集樣機測試的流程。所有供貨商把機器發到挪威奧斯陸總部進行測試試用。
技術控們像條女朋友一樣挑伺服器,直到一台伺服器把他們全部擊潰了。這台伺服器來自所有人都知道的全球一級廠商名字不敢提)。當Opera工作人員啟動之後,用Opera 瀏覽器訪問管理介面,被直接轉到錯誤介面。這還不是問題全部,當找到問題根源時,連同 CSS 發明人現任 Opera CTO)帶旗下所有人都崩潰了。
錯誤的原因是,伺服器管理介面被下面一個經銷商加了一行Javascript代碼,判斷到 Opera 瀏覽器訪問管理介面直接粗暴的轉向錯誤頁面。
結果:
由於這行Javascript代碼,此公司成功的激怒了 Opera 公司所有相關人員,成功的丟掉了這筆百萬大單。Opera 公司感到奇怪,寫明代碼找我們瀏覽器的麻煩,還想賣給我們公司伺服器?
元兇:
就是一行Javascript代碼,邏輯是簡單粗暴的處理使用者,發現使用者使用Opera 瀏覽器直接轉向錯誤頁面。 這算是史上最昂貴的Javascript代碼了。
- if (is.opera) { window.location.href="config/error.htm"; }
- JavaScript類和繼承:prototype屬性
- JavaScript類和繼承:this屬性
- ExtJS Grid Tooltip的3+1種實現方式總結
- JavaScript非同步呼叫架構的鏈式實現
- JavaScript非同步呼叫架構的jQuery風格鏈式調用