增加分配给部署到payara micro的应用程序的内存

时间:2017-04-26 02:47:15

标签: jvm payara-micro

我从payara micro UberJar运行我的应用程序,并希望增加分配给应用程序的内存。如何在创建uberJar时执行此操作?

2 个答案:

答案 0 :(得分:2)

有几种方法可以做到这一点。我提到的第一种方式是首选方式:

1。使用asadmin命令

最新版本的Payara Micro引入了一个名为--postbootcommandfile的选项,允许您对Payara Micro运行asadmin命令。您的文件应包含以下内容:

delete-jvm-options -Xmx=512m
create-jvm-options -Xmx=1g
create-jvm-options -Xms=1g

在应用新选项之前,您需要确保删除现有选项。

然后您可以使用与此类似的文件:

java -jar payara-micro.jar --postbootcommandfile myCommands.txt --deploy myApp.war --outputuberjar myPayaraMicroApp.jar

您的设置现在应该保留在生成的Uber JAR中。

2。提供自定义domain.xml

替代方法是修改自己的domain.xml并用自己的域覆盖内置的domain.xml。

您可以使用--rootdir选项让Payara Micro将其配置输出到目录,以便您可以在那里进行更改。本博客概述了此过程:
http://blog.payara.fish/working-with-external-configuration-files-in-payara-micro

如果您已经拥有自定义域名,则可以使用--domainconfig属性来提供它,如下所示:

java -jar payara-micro.jar --domainconfig myCustomDomain.xml --deploy myApp.war --outputuberjar myPayaraMicroApp.jar

按照这些方法之一后,您只需启动生成的JAR,即可应用所有设置和配置:

java -jar myPayaraMicroApp.jar

答案 1 :(得分:0)

Payara Micro uber JAR是一个普通的JAR,并没有像Payara Server那样启动新的JVM。因此,由于JVM已经启动,因此无法在JAR中修改JVM内存设置。虽然可以将JVM设置添加到Payara Micro配置中,但它们会被忽略而不会应用。这些配置值仅在Payara Server中使用。

使用Payara Micro uber JAR,您需要在命令行中指定JVM选项,如下所示:

java -Xmx=1g -Xms=1g -jar myPayaraMicroApp.jar

如果需要在uber JAR中指定JVM参数,则需要使用类似capsule.io的解决方案将JAR包装到启动程序JAR中,该JAR将为Payara Micro生成单独的JVM并将参数传递给它