2
a blog post Twitter表示他們已經從客戶端渲染轉移回服務器端渲染。爲什麼Twitter會從客戶端渲染轉換爲服務器端渲染?
我想找到一個更徹底的原因解釋。
在後他們的狀態:
[客戶方渲染]缺乏可用只在服務器上各種優化支持。
什麼是優化缺乏客戶端?
他們也狀態:
[服務器端渲染]減少[S]在性能上跨瀏覽器
我看這是一些瀏覽器未與客戶方的渲染以及執行差異。哪些瀏覽器和渲染速度比較慢?
a blog post Twitter表示他們已經從客戶端渲染轉移回服務器端渲染。爲什麼Twitter會從客戶端渲染轉換爲服務器端渲染?
我想找到一個更徹底的原因解釋。
在後他們的狀態:
[客戶方渲染]缺乏可用只在服務器上各種優化支持。
什麼是優化缺乏客戶端?
他們也狀態:
[服務器端渲染]減少[S]在性能上跨瀏覽器
我看這是一些瀏覽器未與客戶方的渲染以及執行差異。哪些瀏覽器和渲染速度比較慢?
我會推測優化,如各種內容塊的緩存,以及在字節/操作碼級別上運行,而不是由瀏覽器重新解釋。就客戶而言,它可能是IE(尤其是9之前的版本),也可能是其他一些老版本的瀏覽器。也可能用於各種移動設備,其中cpu在preimum和一些額外的HTML下來的線最好等待,直到CPU可以繞過來運行所有的JavaScript。
當然,這也意味着所呈現的html更加難以抓取,因此它可以幫助他們爲想要編寫腳本以與twitter網站外觀搭配的人添加一點路障。
如果你聯繫他們,你可能會得到更好的信息...... – 2012-08-01 21:15:31
很容易判斷哪個瀏覽器表現不佳。他們不得不這樣做,因爲渲染DOM元素或者在IE中執行幾乎所有的DOM操作都會完全打擊。任何時候你必須添加元素到一個頁面中,通常最好是將它們渲染到DOM上,並將它們一次全部插入到頁面中。 – scrappedcola 2012-08-01 21:27:52
作爲@scrappedcola的後續工作,我測試了IE中的DOM操作(iirc 10000x append,remove)的性能。 Chrome 20需要〜0 ms,IE9需要16秒(IE6:約一分鐘)。 – 2012-08-01 21:50:24