簡體   English   中英

如何管理tomcat中的Webapp足跡?

[英]How to manage webapps footprint in tomcat?

我正在尋找一種運行時解決方案,以查找Web應用程序的內存使用情況。 我提供了一個包含tomcat的框架,不同的客戶端在該框架上部署了多個Web應用程序。 有時其中之一會消耗大量內存,從而破壞了整個過程。 我希望有一個管理器Web應用程序(例如tomcat的管理器)可以檢測到此問題,並且可能取消部署\\重新部署有問題的Web應用程序。 另一個解決方案(我認為不可能)是將堆的一部分單獨分配給每個Web應用程序。

要求客戶更改現有的Web應用程序是可能的,但我不想這樣做。

有什么想法嗎?

您無法攔截每個Web應用程序中的分配,並且垃圾回收器沒有回調,因此您無法知道每個Web應用程序使用多少內存。 我認為您最好部署幾個Tomcat實例,以使一個“流氓” Web應用程序不會殺死所有其他(每個WebApp最多一個Tomcat,但是您也可以創建組來限制實例數量,具體取決於批評程度)您的不同應用程序)。

Tomact作為單個Java進程運行,因此很難為每個應用程序分配內存。 您只能增加MaxPermSize,-Xmx

您可以檢查Tomcat的泄漏檢測器,但由於無法更改其他應用程序的源代碼,因此幾乎無濟於事。

我認為您要查看的是VisualVM,這將為您提供JVM中Tomcat內存使用的概述。

http://techblog.zabuchy.net/2012/monitoring-of-tomcat-with-visualvm-and-visualgc/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM