我无法选择野生蝇的最佳配置。我在DigitalOcean上有一个Droplet,它有2GB Ram和1vCPU。我有mongodb的社交媒体应用程序(登录并查看您的粉丝)。此应用每15分钟触发一次Firebase云消息服务。 FCM向客户端发送通知后,客户端向服务器发送请求。服务器进行一些db读/写操作后。但问题是服务器大约每2-3小时就无法响应,所以我需要重新启动它。我跟踪内存使用情况图。重启后内存使用情况图缓慢增加但总是增加。这是关于wildfly conf还是你可以说一下这个? Wildfly的前面有Nginx。
Wildfly conf:
仓/ standalone.conf
if [ "x$JAVA_OPTS" = "x" ]; then
JAVA_OPTS="-Xms768m -Xmx1024m -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true -Duser.timezone=GMT+3"
else
echo "JAVA_OPTS already set in environment; overriding default settings with values: $JAVA_OPTS"
fi
域/配置/ domain.xml中
<server-group name="main-server-group" profile="full">
<jvm name="default">
<heap size="1024m" max-size="1536m"/>
</jvm>
<socket-binding-group ref="full-sockets"/>
</server-group>
<server-group name="other-server-group" profile="full-ha">
<jvm name="default">
<heap size="1024m" max-size="1536m"/>
</jvm>
<socket-binding-group ref="full-ha-sockets"/>
</server-group>
域/配置/ host.xml
<jvms>
<jvm name="default">
<heap size="1024m" max-size="1536m"/>
<jvm-options>
<option value="-server"/>
<option value="-XX:MetaspaceSize=96m"/>
<option value="-XX:MaxMetaspaceSize=256m"/>
<option value="--add-exports=java.base/sun.nio.ch=ALL-UNNAMED"/>
</jvm-options>
</jvm>
</jvms>
谢谢。
答案 0 :(得分:0)
您是否尝试过在#stand; standalone.conf&#39;中设置垃圾收集?位于libexec / bin?
我切换到Oracle的G1垃圾收集系统,它整理了我所有的内存和#34; WildFly 10/11上的问题。现在使用12。
http://www.oracle.com/technetwork/tutorials/tutorials-1876574.html
# G1 Garbage Collector
JAVA_OPTS="-server -Xms2g -Xmx8g"
JAVA_OPTS="$JAVA_OPTS -XX:+UseG1GC"
JAVA_OPTS="$JAVA_OPTS -XX:MaxGCPauseMillis=200"
JAVA_OPTS="$JAVA_OPTS -XX:InitiatingHeapOccupancyPercent=45"
JAVA_OPTS="$JAVA_OPTS -XX:G1ReservePercent=25"
JAVA_OPTS="$JAVA_OPTS -XX:+PrintGCDateStamps -verbose:gc -XX:+PrintGCDetails -Xloggc:/Users/NOTiFY/IdeaProjects/MigrationTool/garbage-collection.log"