我正在开发一个Web应用程序。要求是在第一页上加载60,000条记录。
我使用oboe library
来传输20,000条记录中的JSON
(目前我们只有JSON
条20K条记录。随着JSON
加载我处理它。
但是页面在4K-5K的负载之间崩溃。记录。
我尝试只加载JSON
而不对JOSN
做任何事情。那是我没有为oboe ajax
请求附加任何处理程序。但页面仍然崩溃了。我描述了这个案例并发现了
(GC Root)
占用703870536字节,其中(Global handles)
占用703227252字节。我正在附上本案的内存分析器截图(summary-view,containment-view,statistics-view)。
我不知道如何释放这些记忆并避免崩溃。请帮忙。感谢。
答案 0 :(得分:0)
根据您提供的信息很难准确说出您应该更改的内容,但我会尝试提供一般解决方案。根据您提供的信息,您可能会尝试同时阅读疯狂数量的json。
如果您更改为json的源以允许您一次读取一百条记录,则更新页面,然后请求更多记录并再次执行。你可以解决你的问题。还要确保将对象设置为null,并删除存储在堆上的信息,并在这两组记录之间加载。
请参阅此URL以了解其他api的分页,它为可能的实现提供了一个好主意。 https://developer.atlassian.com/confdev/confluence-rest-api/pagination-in-the-rest-api