Introduction
Ce document décrit le problème où le serveur de la Voix XML (VXML) manque de mémoire et signale :
java.lang.OutOfMemoryError: PermGen space
Problème
Dans certains cas, le serveur VXML/Tomcat tombe en panne et affiche un message d'OutOfMemoryError.
Ces extraits sont vus dans les journaux des erreurs de serveur d'application VXML.
Exception in thread "Message Buffering Thread Error with admin
application update,xx/xx/2013 xx:xx:xx.xxx, The error was:
There was a problem loading classes local to the application
<application Name>. The root cause was:
java.lang.OutOfMemoryError: PermGen space
com.audium.server.AudiumException: There was a problem loading
classes local to the application <applicationname>
.at com.audium.server.controller.AudiumServerConfiguration.
loadLocalClasses (AudiumServerConfiguration.java:1405)
at com.audium.server.controller.AudiumServerConfiguration.
<init>(AudiumServerConfiguration.java:212)
Caused by: java.lang.OutOfMemoryError: PermGen space
Solution
Quand vous exécutez le Customer Voice Portal (CVP) et trouvez un message par hasard d'OutOfMemoryError, référez-vous à ces étapes pour le contournement.
Augmentez le mémoire virtuelle
Dans de nombreux cas, une augmentation du mémoire virtuelle aide. Afin d'augmenter le mémoire virtuelle dans des versions 8.5 et 9.0 CVP, terminez-vous ces étapes :
Windows 2003
- Naviguez vers :
Start > Run > Regedit
HKLM \ LOGICIEL \ logiciel Foundation\Procrun2.0\VXMLServer\ d'Apache
Paramètres \ Javas \ options
- Ajoutez la clé de registre de "-XX:MaxPermSize=256M" afin d'augmenter le mémoire virtuelle PermSpace.
Windows 2008
- Naviguez vers :
Start > Run > Regedit
Logiciel Foundation\Procrun2.0\VXMLServer\ HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache
Paramètres \ Javas \ options
- Ajoutez la clé de registre de "-XX:MaxPermSize=256M" afin d'augmenter le mémoire virtuelle PermSpace.
Référez-vous aux plusieurs vulnérabilités dans le pour en savoir plus de bulletin de renseignements de Sécurité de logiciel de Portail Cisco Unified Customer Voice.
Services destinés aux développeurs de contact
Au delà de ces difficultés, l'application VXML met au point devrait être manipulée par le développeur d'applications VXML parce que le centre d'assistance technique Cisco a des ressources limitées pour analyser l'écoulement d'application impliqué. Si vous avez suivi la procédure dans ce document et la source d'utilisation de mémoire excessive ne peut pas être trouvée, contactez les Services destinés aux développeurs afin de passer en revue l'application.
Forum aux questions
Quelle est la meilleure manière de surveiller la consommation de mémoire d'application VXML ?
Il y a plusieurs outils disponibles pour ceci, tel que VisualVM, JProfiler, et Yourkit. Les profileurs l'uns des qui évaluent des applications VXML fournissent les détails dans lesquels les structures de données accumulent et ne déchargent pas la mémoire, qui mène par la suite à un état d'OutOfMemory.
Combien de fois le nettoyage de la mémoire est-il donné un coup de pied hors fonction sur le serveur a (CVP) /VXML ?
Quand les passages de nettoyage de la mémoire dépend de la charge du système. Une règle générale est qu'un système de charge élevée ou un système avec un peu de mémoire rencontre le nettoyage de la mémoire souvent tandis qu'un système ou à faible volume avec un grand nombre de mémoire exécute le nettoyage de la mémoire moins fréquemment.
Comment le nettoyage de la mémoire décide-t-il quelle mémoire à reprendre des applications ?
Ceci est évalué par Java Virtual Machine (JVM). N'importe quel objet va bien à un candidat pour le nettoyage de la mémoire une fois que toutes les références à lui sont jetées.