【问题标题】:Should I convert XML to JSON for performance reasons? [closed]出于性能原因,我应该将 XML 转换为 JSON 吗? [关闭]
【发布时间】:2015-01-20 03:25:15
【问题描述】:

我目前使用 Visual Studio 集成的 Settings-Management-System 存储我的设置,它使用 XML。但在这篇文章 [http://www.codeproject.com/Articles/159450/fastJSON] 中,我读到“最快的 XML 比最慢的 JSON 慢约 50 倍”。因此,当您将给定的 XML-Data 转换为 JSON 然后反序列化它时,它可能会更高效。我没有找到任何测试,也不知道如何测试它。那么这种方式会更高效吗?它从多少数据中获利(多少)? 我指的 JSON 框架是 fastJSON,它可能是 C# 中最快的 JSON 框架。

【问题讨论】:

  • 我会非常警惕任何“X 比 Y 慢”的说法,除非提出该说法的人能够证实这一点。
  • 应用程序的多少时间用于加载设置?通常在启动时完成一次,除非设置很大,否则它只是启动成本的一小部分。
  • 最快的 XML 比最慢的 JSON 慢约 50 倍”,即使这是真的,这听起来像是过早的优化。您确定 XML 序列化是一个足够重要的性能问题,足以保证重写您的设置 API 的努力吗?即使这是一个问题,您是否尝试过改进对现有 API 的处理(例如,您可能正在进行大量不必要的调用)?

标签: c# .net xml json fastjson


【解决方案1】:

如果您使用 Visual Studio 设置,您可能不会注意到使用 JSON 在性能上的任何差异,并且会失去设置系统为您提供的漂亮 GUI 和已编写的支持。不要这样做!

要验证您是否有任何速度改进,您需要获取分析器并进行测量。过早的优化是邪恶的!

【讨论】:

    【解决方案2】:

    优化设置的加载速度似乎有点矫枉过正。

    如果您不断地在各处加载它们(以至于从 XML 转换到 JSON 会带来显着的改进),您应该花一些时间来优化您处理设置的方式。

    【讨论】:

      猜你喜欢
      • 2011-08-16
      • 2019-11-19
      • 2010-11-16
      • 2010-09-15
      • 1970-01-01
      • 2021-05-03
      • 2011-10-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多