Tengo un gran problema con Openfire que se bloquea de vez en cuando debido a la falta de memoria. En el registro de Java tengo el siguiente registro de errores. sin embargo los problemas son
- Openfire es de 32 bits y no puedo ejecutarlo en 64 bits.
- Debido a que la única memoria máxima de 32 bits que puedo darle al openfire es de 4 GB.
- Mi sistema es muy potente con 32 GB de RAM, así que no puedo aumentar más.
- Solo un máximo de 100 usuarios están usando Openfire pero todavía parece que no puedo manejarlo.
- Ejecuté trabajos cron cada 5 minutos para monitorear este servicio y reiniciar de vez en cuando.
¿Alguna solución sobre cómo optimizar open-fire para el uso de memoria y evitar que falle?
registro de errores como se muestra a continuación
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 140 bytes for CHeapObj-new
# Possible reasons:
# The system is out of physical RAM or swap space
# In 32 bit mode, the process size limit was hit
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Use 64 bit Java on a 64 bit OS
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
#
# Out of Memory Error (allocation.inline.hpp:44), pid=31239, tid=2735213424
#
# JRE version: 6.0_41-b02
# Java VM: Java HotSpot(TM) Server VM (20.14-b01 mixed mode linux-x86 )
--------------- T H R E A D ---------------
Current thread (0xad2c7000): JavaThread "Jetty-QTP-AdminConsole-16012" [_thread_in_vm, id=21077, stack(0xa3030000,0xa3081000)]
Stack: [0xa3030000,0xa3081000], sp=0xa307f3d4, free space=316k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x727990]
Respuesta1
Openfire está escrito en Java y no es específico de 32 bits. Si usa un jvm de 64 bits, se ejecutará en modo de 64 bits y podrá darle tanta RAM como tenga. Intente instalar un jvm/jre de 64 bits