繁体   English   中英

如何通过Tomcat Web应用程序上的大型数据集克服响应缓慢或内存不足的问题?

[英]How Can I overcome slow response or memory limit with large data sets on Tomcat web application?

清单应用程序以四层模型构建,该模型包括:基于applet的图形用户界面; 专有中间层(Tomcat Web应用程序); Oracle 10g存储过程中的业务逻辑。 数据存储在Oracle 10g中。

问题:中间层设计用于事务性通信,而不是用于将大型数据集(10,000多个行)移至用户界面或报表。 该应用程序不限制搜索结果的大小,这意味着用户能够执行将非常大的数据集返回到前端的搜索。 这样的请求导致中间层对此请求以及其他并发请求的响应缓慢,达到JVM堆内存上限,在最坏的情况下,导致中间层崩溃。

任何关于最佳解决方案的建议/帮助/见解将不胜感激。 非常感谢你。

您需要限制从服务器返回的数据量。 事实是,一次向用户显示10,000行没有任何价值(没人能消化它)。 将其分解成较小的集合(例如100个),并提供过滤机制,使用户能够找到相关数据。
对于报告,您将需要执行一些特殊查询以生成最常见的临时报告。 您可能希望通过某种批处理机制脱机生成每日(或其他定期)报告,以便用户在准备就绪后就可以下载这些报告,这样就不会影响事务处理。 这些可以通过其他机制(在应用服务器外部)生成,并写入Excel,PDF或其他文件格式,以供用户通过链接下载

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM