php - 性能方面的 : request JSON and render in JS, 还是请求整个 HTML?

标签 php javascript html optimization

<分区>

Possible Duplicate:
Why is it a bad practice to return generated HTML instead of JSON? Or is it?

如果我向 PHP 文件发送 AJAX 请求,什么会导致更快地呈现 HTML:

  1. 直接从 PHP 发送完全格式化的 HTML,或者:
  2. 只发送 JSON 数据并让 Javascript 进行 HTML 渲染?

我有一个相当复杂的 HTML 结构,这使得大型 HTML block 的下载时间与 Javascript (jQuery) 呈现相同结构所需的时间相比。

有定论吗?

最佳答案

您需要根据您的情况衡量时间,因为答案将取决于:

服务器呈现的 HTML:

  1. 服务器在低负载和高负载下将数据格式化为 HTML 所需的时间。
  2. 在低负载和高负载下将格式化的 HTML 移动到客户端所需的时间。
  3. 对于慢速和快速客户端和浏览器,在客户端使用格式化的 HTML 重新绘制页面所需的时间。

客户端呈现的 HTML:

  1. 在低负载和高负载下,服务器将数据格式化为 JSON 所需的时间。
  2. 在低负载和高负载下将 JSON 数据移动到客户端所需的时间。
  3. 客户端从 JSON 数据呈现 HTML 所需的时间,适用于慢速和快速客户端和浏览器。

在这种情况下,在编码之前在实验室运行一个小时的测试可以让您免于以后重做所有事情。

[已添加]

每组测量值(1、2、3)都需要一组不同的工具来捕获数据。我会选择 3 组代表性数据(最小、平均、最大),然后针对每个数据集,进行上面列出的每个测量。请注意,您不需要(事实上不应该)使用您的完整应用程序——您实际上只需要最小的代码块来执行您想要的操作。然后我会寻找服务器呈现和客户端呈现之间的差异,并决定哪个(如果有的话)在我的应用程序中更重要。

您无法衡量所有可能的组合,但如果您在最慢的 PC 上选择最慢的浏览器,您可以动手操作(例如:便宜的上网本),并使用尽可能慢的互联网连接(你还有一个 AOL 拨号帐户用于测试,对吗?)这往往会向你展示最坏的情况,这才是你真正关心的。

关于php - 性能方面的 : request JSON and render in JS, 还是请求整个 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3175241/

相关文章:

php - 如何解析php中的动态_POST变量

php - 在 PHP 中实例化类或使用静态方法

javascript - 无法在asp.net中使用Json将数据保存到数据库中

javascript - 如何迭代请求调用并将结果存储在对象中?

php - 运行长 PDO 插入语句的更快方法?

php - 部署后未找到 Livewire View

javascript - 为什么空数组上的 indexOf 不返回 -1?

html - 导航栏不显示内联

html - CSS Float 不拉伸(stretch) Div 高度

php - 修复未关闭的 HTML 标签