发表数千变量与一个长JSON字符串:什么是可取的?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (23)

我需要从jQuery到PHP发布大约200x50(行,列)的表值。两种选择:

1)以10,000个变量作为数组发送(增加php.ini max_input_vars)。

2)将数组序列化为JSON字符串,将其作为字符串进行POST并在服务器端以PHP解码。

什么是可取的?选项1有任何潜在的问题?

在一个大型输入表上测试两个药剂达到250x50的单元格后,它看起来第一个选项要快得多:1-2秒,JSON字符串约17-20秒。

瓶颈是数据传输到服务器的时间,因为对象到JSON和后端事务几乎是即时(几毫秒)。

提问于
用户回答回答于

你已经回答了你自己的问题。在开发软件时应该使用的代码质量和性能之间存在合理的折衷。

所以Json在Javascript和PHP两方面都受到支持,并且在代码中提供了更好的结构。

用户回答回答于

我发送PUT请求到我们的服务器与身体中的二进制数据,可能相当于10K文本记录,并且传输速度非常快。我可能会想知道那里发生了什么事情,无论是在一个人与另一个人的转移时间里,有什么可能会误导你。例如,后变量可能会认为“转移”是请求的不同阶段。或者,如果你用行/列名或类似的东西给json结构添加了大量无关的行李?

如果事实证明这是真的,并且每种方法都具有相同的性能 - 我个人会在结构体中使用结构化的JSON,因为它看起来更清晰,更容易查看/调试与一堆编码后变量名称。

另外 - 我不知道你的应用程序做什么,所以你的方法可能是完全合适的。但我可能会考虑确定是否可以根据需要发送数据,而不是一次发送整个表。(当人们不回答我的问题并尝试给我一些替代方法来做事情时,我感到很恼火,所以最后一点点用一点盐!但是人类看起来不寻常的是会触及10k条记录 - 要求他们都被同时发送到服务器)

扫码关注云+社区