2012-08-01 144 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网站外观搭配的人添加一点路障。