【问题标题】:Performance comparison of AJAX requests: XML vs. JSONAJAX 请求的性能比较:XML 与 JSON
【发布时间】:2011-03-27 14:29:58
【问题描述】:

我正在考虑两种不同的方法来完成使用 AJAX 显示动态 HTML 的相同任务。第一种方法是简单地在服务器端生成 HTML,然后通过插入它。 DOM(实际上是 jQuery 的 $().load() )。第二种方法是在服务器端生成 JSON,然后使用该数据将元素注入 DOM。

我想知道每种方法的优缺点,尤其是在性能权衡方面。显然,必须将 HTML 与数据一起发送会减慢 HTTP 响应的速度,但是数据需要多大才能花费明显更长的时间来加载?

话虽如此,渲染新的 HTML 与构建 DOM 对象然后将其注入当前文档的性能相比如何?我有一种直觉,大多数浏览器在渲染新的 HTML 块时比一次渲染页面的不同部分的点点滴滴更有效(可能是因为浏览器已经这样做了更长的时间?我不知道,只是预感) .不同浏览器如何比较? (我个人使用 Chrome(不用于测试),但我希望 webapp 可以跨 Safari、IE7、IE8 和 Firefox 使用)。

如果 JSON 显然是更好的方法,那么什么是极端的呢?加载索引以获取文档对象和简单的页面结构,然后从那里使用 AJAX 和 JSON 来做其他所有事情怎么样?

【问题讨论】:

  • 您忘记了第三种选择:通过 JSON 传递数据,使用 JavaScript 从中构造一个 HTML 块,然后一次插入整个块。

标签: ajax performance json cross-browser


【解决方案1】:

您可以查看此视频,了解在现代浏览器中呈现 html 的问题有多大(实际上是巨大的)。确实,您可以为无辜用户节省数百小时的等待时间。 http://www.youtube.com/watch?v=nCgQDjiotG0

好吧,现在别开玩笑了。由于速度而切换到 json 的整个想法对我来说听起来有点极端。不是因为 html 有一些技术优势,而是因为从模板生成 html 在每个 Web 框架(至少是 MVC)中都很容易。这就是 Web 框架所做的。在 Javascript 中将数据放入模板对我来说听起来有点棘手。不必要的并发症。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-01
    • 2021-01-20
    • 1970-01-01
    • 2010-11-04
    • 2011-06-10
    • 2017-08-09
    • 1970-01-01
    相关资源
    最近更新 更多