我使用的是webservice,它提供XML或JSON格式的大型结果集。 哪种格式更快或更好(基于性能)?我还应该使用哪种语言来解析XML / JSON?我应该使用PHP还是JavaScript?
答案 0 :(得分:13)
都有自己的优势:
<强> JSON 强>
$dataStructure = JSON_decode($serializedString);
,已完成。<强> XML 强>
问题是处理结果集的语言有点不合情理。 javascript是客户端*,php是服务器端。所以,这取决于你想对结果集做什么。
您可以直接将结果传递给浏览器/ js,而无需在服务器端执行任何操作,并让客户端进行过滤和渲染。这在某些情况下可能有意义,但通常不是你想要的。
我的建议:如果可能,请使用JSON。
答案 1 :(得分:11)
“PHP或JavaScript”听起来像是一个奇怪的选择:PHP 通常用作服务器端语言,而JavaScript 通常用作客户端 - 边语。
你的情况如何?是什么让你特别推荐这两种语言?如果您可以提供有关您尝试做的更多信息,那将会有很大帮助。 (我们不知道您是在开发Web应用程序,批处理工具,GUI应用程序等。)
我怀疑JSON会比XML更紧凑,尽管如果他们压缩数据你可能会发现他们最终会采用相同的带宽(因为很多“膨胀”的XML很容易压缩)。
与以往一样,最好的方法是使用一些实际数据测试特定的Web服务。普遍性不是决策的良好基础。
答案 2 :(得分:2)
我会选择JSON,你不支付“有角度的支架税”。 PHP和Javascript之间的选择与数据所需的处理量有关(我在这里进行了一次飞跃)。
大量处理,使用PHP,因此它是服务器端。很少的处理使用Javascript来获得更具响应性的页面(通过AJAX加载数据)。
答案 3 :(得分:1)
我认为你必须自己测量它。表现将取决于:
所以你可以看到有很多变数。
您使用的网络服务是否需要更长时间才能以一种格式汇编数据?
有很多选项可用于解析JASON和XML,因此不要将自己局限于PHP或Javascript(如果您有选择)。最后,如果您从Web服务请求,您将承担网络传输成本,连接设置等的开销。因此,解析性能的任何时间节省可以忽略不计。 的努力可以更好地花在其他地方。
我认为我没有回答你的问题,只是给你更多的事情要考虑!
答案 4 :(得分:1)
尽管语言/工具组合之间的性能方面确实存在很大差异,但最终xml和json在使用平台的最佳工具时往往具有相似的性能特征。也就是说,你不会再找到两倍或更多的速度;文本格式的理论限制是相似的。几乎在任何用例中,两者都“足够好”。
因此,我会更专注于工具支持,以完成您的任务。除此之外,格式选择不太可能是最重要的考虑因素。
和Jon一样,PHP和Javascript的比较听起来很奇怪......苹果和橘子左右。
答案 5 :(得分:1)
可能遗漏的一件事是JavaScript客户端不必解析JSON,因此您将获得性能上的胜利。浏览器将XML解析为DOM并将其交给您的回调,然后您需要从该DOM中提取所需的信息。使用JSON,您可以获得一个对象,并且从DOM中提取的需求已经消失。
答案 6 :(得分:-2)
你应该使用python,最好是:)
至于格式,我猜JSON会快一点,但这取决于细节,无论如何这个任务都是网络绑定的。
答案 7 :(得分:-3)
如果您正在使用带有ajax的应用程序,那么您应该选择Javascript来处理客户端上的数据,这将减少服务器上php的使用意味着更高效的服务器端。您可以将结果集存储在json文件中,然后可以使用javascript在客户端调用它,这将是最好的方法,因为这不会消耗服务器上的资源,并且将在客户端处理数据。在这里我将优先考虑json over xml,因为xml占用的空间比json要多,因为它的标签样式和json就像javascript中的数组一样,比xml更快。在服务器端同样的事情,你可以轻松地将你的json数组转换为php数组(只需参考PHP中的json_decode函数)。
现在,json很流行,因为它易于使用且速度更快。
为了提高性能,您应该减少服务器端的数据处理,并且应该使用客户端资源,而这种方法将为您的应用程序提供速度和成本效益。