簡體   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