使用groovy,你会期望在读取和查询JSON与XML的速度和内存开销方面有更好的性能吗?

有帮助吗?

解决方案

JSON比XML更小,更简单。我敢打赌,解析JSON的速度会更快。

YAML会更快。

其他提示

如果速度确实是一个问题,我宁愿使用java库来解析我想要的东西,而不是依赖Groovy的实现。

如果它是相同的模式和相同的信息,则内存使用将几乎相同。两者之间的表现应该可以忽略不计。

我相信如果架构和数据相同,那么除了分析器之外的其他任何东西都无法检测到性能差异。也就是说如果使用错误的XML解析器,你会发现很大的不同。换句话说,SAX实现可以轻松匹配或可能优于JSON解析。 cinsider有很多外在因素。如果你想要真实的故事,可以在相同的数据/模式中同时抛出JSON和SAX解析器而不需要额外的逻辑。大量节省来自用于解释解析的逻辑。根据您的要求使用DOM或拉解析器可能更简单,而SAx会导致过于复杂的非性能解决方案。解析器之间也存在明显的差异。添加文件大小的变量,您很快就会放松实际测量的范围。另一个例子,如果您的XML包含必须通过线路解析的DTD描述和实体引用,并且您的网络连接具有高延迟,那么您可以看到使用JSON的改进。这一切都归结为你真正想做的事情。

XML比JSON有更多的开销,因为尖括号和额外信息以及没有。由于这个原因,任何好的解析器都应该能够比XML更快地解析JSON。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top