【问题标题】:Large JSON object in browser client浏览器客户端中的大型 JSON 对象
【发布时间】:2019-02-15 08:52:28
【问题描述】:

我有一个大约 8 MB 的大型 JSON 对象,来自存储在浏览器客户端中的服务器。如果我减少在这些列表中重复的变量的名称,是否会在操作列表和更新对象时提高性能?

    { "VenueLocationID" : 12 }

    { "vid" : 12 }

【问题讨论】:

标签: javascript json performance browser


【解决方案1】:

如果您将 8MB 的数据从服务器传输到客户端,可能。但是,有更好的方法来提高性能。如果您的 JSON 来自 HTTP 响应,则激活 gzip 压缩可以在不降低可读性的情况下获得更好的性能。

调整性能的最佳方法是分析应用程序——找出瓶颈所在,然后解决它们。 Profiler 有时可以找到我从未想过会成为问题的事情。

另一件事是 JSON 是如何构建的。我通过流解析帮助了一些系统。我没有序列化(字符串化)一个巨大的数组,而是序列化了每个元素 [并将其写入响应流,] 由典型的分隔符('['']'',')包围。

【讨论】:

  • 我是为实际下载的,但是浏览器解压后你们不明白,它在浏览器中仍然是8MB,因为它是相同的JSON。
  • 其实这妹子完全明白。我建议使用上述技术,因为 I/O(网络、磁盘)往往是比 RAM 更大的瓶颈。如果您的客户端在不进入虚拟 RAM(交换)的情况下无法将对象放入内存中,那么 [这也是一个 I/O 问题。]
  • 我们没有遇到过这个大对象的问题,但我想问你是否因为减少了命名属性等而减少了占用空间,如果没有,“在浏览器中”,不是已经完成的 http 请求。
  • 看来这个问题已经回答了,很抱歉浪费您的时间。 stackoverflow.com/questions/31719887/…
  • 你能回答这个问题吗? stackoverflow.com/questions/52266089/…
猜你喜欢
  • 1970-01-01
  • 2019-10-05
  • 2021-04-23
  • 1970-01-01
  • 1970-01-01
  • 2018-10-22
  • 1970-01-01
  • 2019-06-13
  • 2016-05-08
相关资源
最近更新 更多