我打算在 VTD 中使用 BufferReuse 功能。做了一个按要求工作的 POC。但我有一个基本的设计问题。这是我的问题陈述:我的应用程序中有近 1000 个 XML 文件,这些文件将经常被加载和解析。就像一秒钟内〜(10-20)次一样。1000 个 XML 文件的范围可以从 <1KB - ~1MB。所以为了优化代码,我想到了使用BufferReuse。
我的问题是:代码内部是否有将由 BufferReuse 功能处理的 XML 数量或 XML 集合大小的最大限制?考虑到在最坏的情况下,我将拥有 1000 MB(1000 个文件* 1MB)的 XML,它是否会过多地加载服务器?它在哪里存储这些解析的对象?我计划实现一个缓存层,它将存储每个 xmls 的 VTDNavigator(具有超时和可以缓存的最大大小)。如果我实现 bufferReuse,它实际上会对我做同样的事情还是有什么不同?
该代码最终将部署在具有非常好的规格的非常强大的服务器中。