Serveur Tomcat 7 Testé soudain (Sur commande) Augmenter la fréquence Young GC Après la mise à jour Ubuntu et OpenJDK

Quel est le problème?

Après avoir mis à jour des instances à Ubuntu 16.04 LTS et OpenJDK 8 La fréquence de la collecte des ordures peut après plusieurs heures de travail normal augmente soudainement dans les ordres de grandeur, ce qui permettra d'utiliser moins 10% HEAP.

Nous avons analysé des journaux GC Et rien étrange, sauf pour augmenter la fréquence, n'a pas trouvé. Même gceasy.io Il dit que tout est cool.

Il semble que cela n'affecte pas les performances négativement, mais provoque toujours une anxiété, et Nagios / OP5 malheureux. Le taux de sélection est 50 Mb / C, et la bande passante et les retards sont nominaux.

Nous avons essayé de jeter l'ensemble du cluster, d'installer tout à partir de zéro, plusieurs options pour divers paramètres. GC et la mémoire, mais le problème est toujours en train de se poser.

Précédemment travaillé?

Oui. Dans d'autres cas, en utilisant les mêmes versions d'applications dans Ubuntu 14.04 LTS, OpenJDK 7u151 Fonctionne, comme prévu, avec une fréquence normale et une utilisation HEAP.

Des questions

Ça se comporte-t-il OpenJDK 8?

C'est un problème Ubuntu ou OpenJDK?

Est la fixation HEAP par Xms Notre seule option?

(Qu'est-ce qui arrive vraiment ici?)

Fixe

VM: AWS (4GB, 2 cores)
Ubuntu: Ubuntu 16.04.4 LTS
Kernel: 4.4.0-1060-aws
Java:
- OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-0ubuntu0.16.04.1-b11)
- OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)
Tomcat 7.0.8x running with NIO connector and 150 threads

Ligne de commande (Dernière itération)

export CATALINA_OPTS="$CATALINA_OPTS -Xmx2048m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:NewRatio=1"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseParallelOldGC"
export CATALINA_OPTS="$CATALINA_OPTS -XX:ThreadStackSize=256k"
export CATALINA_OPTS="$CATALINA_OPTS -server"
export CATALINA_OPTS="$CATALINA_OPTS -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -Xloggc:/var/log/tomcat7/gc.log"

Après 48 Horloge de contrôle de la performance

$ free
total used free shared buff/cache available
Mem: 3801048 1248348 1959488 5280 593212 2291640
Swap: 0 0 0

C'est une photo de ce dernier 24 Heures de test de performance: - dans 05:30 Goutte d'utilisation soudaine HEAP et augmenter GC - 10:00 Charge accrue B. 2 fois

https://i.stack.imgur.com/jrJyk.png
Invité:

Pour répondre aux questions, connectez-vous ou registre