Java Jetty服务器:内存消耗问题。

Java Jetty服务器:内存消耗问题。,java,websocket,jetty,embedded-jetty,Java,Websocket,Jetty,Embedded Jetty,我们在定制设备板上的jetty runner的帮助下运行JAVA web应用程序。设备板有一些限制,比如“SWAP disable”[1GB的RAM],因此每当我们使用jetty启动JAVA Web应用程序时,内存消耗就会从350MB逐渐增加到900MB; 即使我们尝试运行一个测试应用程序[simple html page with the the application required libraries-websocket、jersey libraries、pdfbox、opencsv],

我们在定制设备板上的jetty runner的帮助下运行JAVA web应用程序。设备板有一些限制,比如“SWAP disable”[1GB的RAM],因此每当我们使用jetty启动JAVA Web应用程序时,内存消耗就会从350MB逐渐增加到900MB; 即使我们尝试运行一个测试应用程序[simple html page with the the application required libraries-websocket、jersey libraries、pdfbox、opencsv],内存消耗仍在350M-900MB之间

我们要求JAVA web应用程序的内存消耗不应超过400MB。需要关于这个问题的建议或解决方案。jetty服务器或库中是否存在内存泄漏

。考虑升级。

不要混用Jetty(或任何工件)的版本

您指定的库列表(您可以编辑自己的问题,您知道):

需要解决的问题:

  • Jetty有两个版本:9.3.x和8.1.x(选择一个,建议9.3.x)
  • 您有两个版本的javax.inject:1.x和2.x(选择一个)
  • 您有两个版本的log4j:1.2.x和2.3(选择一个,建议使用1.2,因为您的slf4j-log4j12.jar库正在使用该版本)
  • 您使用的是过时的jetty-schemas.jar
  • org.eclipse.jdt.core.jar用于Jetty 8上的JSP编译(不适合在类路径中查看)
  • 如果您没有使用OSGi,请删除OSGi-resource-locator.jar
如果提到的库是您在WEB应用程序的
WEB-INF/lib
中找到的库,则应删除您的
WEB-INF/lib
中存在的以下JAR,因为它们属于服务器类路径,而不是您的WEB应用程序

javax.annotation-api-1.2.jar
javax.el-3.0.1-b08.jar
javax.servlet-api-3.1.0.jar
jetty-http-8.1.17.v20150415.jar
jetty-io-8.1.17.v20150415.jar
jetty-schemas-3.1.M0.jar
jetty-util-8.1.17.v20150415.jar
org.eclipse.jdt.core-3.8.2.v20130121.jar
websocket-api-9.3.14.v20161028.jar
websocket-servlet-9.3.14.v20161028.jar

我会尝试在一些“实验室”环境中运行该软件堆栈。。。好的,做一些内存分析。“jetty服务器或库中是否存在内存泄漏?”-可能,但更可能的是泄漏在您的web应用程序中。你试过在那里寻找吗?我们用简单的html页面测试了应用程序,如果没有我们的代码,那么它的消耗仍然在相同的范围内..应用程序中使用的库列表-amqp-client-3.5.3.jar protobuf-java-2.5.0.jar gson-2.2.2.jar jaybird-full-2.2.8.jar jackson-core-asl-1.9.13.jar jackson-jaxrs-1.9.13.jar jackson-mapper-1.9.13.jar jackson-xc-1.9.13.jar javax.annotation-api-1.2.jar javax.el-3.0.1.0.1.8.jarjavax.inject-1.jar javax.inject-2.2.0.jar javax.servlet-api-3.1.0.jar javax.ws.rs-api-2.0.jar
javax.annotation-api-1.2.jar
javax.el-3.0.1-b08.jar
javax.servlet-api-3.1.0.jar
jetty-http-8.1.17.v20150415.jar
jetty-io-8.1.17.v20150415.jar
jetty-schemas-3.1.M0.jar
jetty-util-8.1.17.v20150415.jar
org.eclipse.jdt.core-3.8.2.v20130121.jar
websocket-api-9.3.14.v20161028.jar
websocket-servlet-9.3.14.v20161028.jar