2012-08-01 148 views
2

a blog post Twitter表示他們已經從客戶端渲染轉移回服務器端渲染。爲什麼Twitter會從客戶端渲染轉換爲服務器端渲染?

我想找到一個更徹底的原因解釋。

在後他們的狀態:

[客戶方渲染]缺乏可用只在服務器上各種優化支持。

什麼是優化缺乏客戶端?

他們也狀態:

[服務器端渲染]減少[S]在性能上跨瀏覽器

我看這是一些瀏覽器未與客戶方的渲染以及執行差異。哪些瀏覽器和渲染速度比較慢?

+2

如果你聯繫他們,你可能會得到更好的信息...... – 2012-08-01 21:15:31

+0

很容易判斷哪個瀏覽器表現不佳。他們不得不這樣做,因爲渲染DOM元素或者在IE中執行幾乎所有的DOM操作都會完全打擊。任何時候你必須添加元素到一個頁面中,通常最好是將它們渲染到DOM上,並將它們一次全部插入到頁面中。 – scrappedcola 2012-08-01 21:27:52

+0

作爲@scrappedcola的後續工作,我測試了IE中的DOM操作(iirc 10000x append,remove)的性能。 Chrome 20需要〜0 ms,IE9需要16秒(IE6:約一分鐘)。 – 2012-08-01 21:50:24

回答

0

我會推測優化,如各種內容塊的緩存,以及在字節/操作碼級別上運行,而不是由瀏覽器重新解釋。就客戶而言,它可能是IE(尤其是9之前的版本),也可能是其他一些老版本的瀏覽器。也可能用於各種移動設備,其中cpu在preimum和一些額外的HTML下來的線最好等待,直到CPU可以繞過來運行所有的JavaScript。

當然,這也意味着所呈現的html更加難以抓取,因此它可以幫助他們爲想要編寫腳本以與twitter網站外觀搭配的人添加一點路障。

相關問題