jQuery与PHP - 性能比较

时间:2011-01-17 15:32:41

标签: php jquery performance

性能方面,这将是更好的解决方案?这是一个非常小的例子。 PHP脚本向jQuery返回一个数字,需要检查它是否为1,页面需要说“1人”,否则为“X人”。

PHP脚本进行此检查并返回“x人”会更快,或者在获取数字后让jQuery执行此操作会更快吗?

8 个答案:

答案 0 :(得分:9)

我假设你有一个不同的案例,这只是一个例子 - 过度简化 - 。检查是一个很小的检查,所以我怀疑你可以衡量差异,但我们可以说你有很多这些检查。

正如@mkoryak所说,jQuery是客户端,PHP是服务器端。如果有10 ^ 5个用户请求这个,那么当让jQuery这样做时你可能会看到一些不同:每个人都做了一次(并没有看到差异),但是你的服务器可以减少10 ^ 5次检查。相反,您的服务器可能比您的客户端快得多,因此对于1个客户端(少数甚至单个客户端)的大量计算可能会更好地在服务器上运行(因此PHP将是您的选择)。

正如@slebetman总结的那样:对于少量客户端,服务器端代码通常更快。对于非常多的客户端,将工作卸载到客户端代码可以大大提高性能。这里是@scunliffe的答案:用压力测试来测试你的溶剂!

答案 1 :(得分:7)

正确答案总是 - 测试/基准。这样你肯定知道哪个更好。

也就是说,如果你正在对PHP(服务器端语言)与jQuery(客户端语言)进行基本比较,那么服务器端的语言应该更快。但是,它总是取决于您尝试处理的逻辑。

答案 2 :(得分:3)

我真的不认为这是一个速度问题(尽管PHP可能会更快,除非它在非常慢的服务器上运行并且客户端机器速度非常快),这更像是一个什么是更合适

在这个例子中,我会选择PHP,因为一旦页面(和jQuery等)加载,就没有理由在浏览器中进行此更改。

作为一般建议 - 除非您尝试通过使用优雅降级的其他“装饰”(例如幻灯片等)来增加“默认”(即:免费的JavaScript)用户体验的价值,它在服务器上。)

答案 3 :(得分:0)

jquery在客户端上运行,php在服务器上运行。你不能比较2的速度,因为一个人甚至没有开始执行,直到另一个完成。

在php

中完成所有操作

答案 4 :(得分:0)

这将取决于您的服务器硬件,但我想对于您网站的整体性能,最好在客户端进行此类“装饰”。

编辑: 此外,您提交给客户的数据较少。

答案 5 :(得分:0)

无所谓,真的 - 性能瓶颈可能在其他地方。

我更喜欢在服务器上执行此操作,因为支持非JS浏览器再次非常重要(动力不足的移动设备,网络蜘蛛等等)。

答案 6 :(得分:0)

假设这个号码来自你的OWN网站内的资源(而不是你正在解析的其他网站的价值): PHP会更快。

  • 没有开销(在页面执行时完成)
  • 不等待页面加载事件然后执行AJAX查询然后解析它

如果这是来自另一个页面的值,我仍然相信PHP更快(使用cURL / fopen [if site allow it] / etc。)。您正在谈论在将页面提供给用户之前运行的某些内容的差异,而不是将负载推送给用户并等待他们的页面首先加载然后填充该字段。

但实际上,它只取决于您希望用户体验的方式。你想要它是无缝的还是尽可能少地加载并在页面加载时构建它?

答案 7 :(得分:0)

我认为你正在考虑性能而不是功能......让我先说一下PHP是SERVER-SIDE而jQuery是CLIENT-SIDE。 PHP的执行时间取决于您的服务器架构和配置; jQuery基于客户端的计算机功能。 jQuery也不适用于旧版浏览器或禁用javascript的浏览器。 PHP呈现标准HTML,因此所有浏览器显示相同的内容(显然这不是关于设计问题和兼容性的讨论)。