Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在服务器上序列化大型索引的最佳做法是什么?_Java_Serialization - Fatal编程技术网

Java 在服务器上序列化大型索引的最佳做法是什么?

Java 在服务器上序列化大型索引的最佳做法是什么?,java,serialization,Java,Serialization,我想缓存一个索引,其中包含从MongoDB集合返回的超过一百万个文档。我正在为每个文档构建一个Java类,并将结果类中的特定属性添加到索引中(目前实现为HashMap)。当达到10万个文档时,我的本地内存已经出现问题,因此我想在服务器上缓存整个索引以进行分析 这样做的好做法是什么?我很难构建整个索引并在服务器上序列化它,因为我将再次遇到内存陷阱。通过HTTP将每个映射发送到服务器似乎有很多不必要的请求(或者不是吗?)。我可以访问Tomcat服务器,但是这对于任务来说似乎不必要地复杂。我不确定您是

我想缓存一个索引,其中包含从MongoDB集合返回的超过一百万个文档。我正在为每个文档构建一个Java类,并将结果类中的特定属性添加到索引中(目前实现为HashMap)。当达到10万个文档时,我的本地内存已经出现问题,因此我想在服务器上缓存整个索引以进行分析


这样做的好做法是什么?我很难构建整个索引并在服务器上序列化它,因为我将再次遇到内存陷阱。通过HTTP将每个映射发送到服务器似乎有很多不必要的请求(或者不是吗?)。我可以访问Tomcat服务器,但是这对于任务来说似乎不必要地复杂。

我不确定您是否应该这样做。它会过时的。对服务器进行一个简单且小的基于索引的查询就足够了。每次我将应用程序缓存引入系统时,我都会后悔。20%的性能提高,复杂性和不可靠性提高了数百%,特别是在未解决的缓存一致性问题上。您指的是什么选项?