Porque un blog????

Por aquello de que se me olvide como configuré tales y cuales cosas en mi sistema linux y android, y para no estar leyendo tutoriales y practicando a prueba y error cada vez que quiero hacer las cosas, que mejor que subirlos aqui, quizas le sirva a otras personas que quieren hacer lo mismo que yo alguna vez ya hice.
Fotos, Beryl, Compiz-Fusion, conversiones entre formatos multimedia en linux, Symbian, S60, android, flv, mp3, wma, avi, Screenlets, Karamba, Python, trabajos con diferentes dispositivos móviles, diferentes distribuciones de linux, firewalls, Mikrotik, freebsd, netbsd, openbsd, Amd64 bits, apuntes escolares, Midis, Videos de youtube "especiales", android, windows mobile, webos etc.


miércoles, 4 de febrero de 2009

Aumentar memoria para java en openfire (ACTUALIZACION JUNIO 2010)




Feliz de la vida con mi mensajero corporativo basado en openfire de repente empiezo a tener problemas de conexión, algunos de los clientes no se pueden conectar y a otros los sacaba de repente.
Que sera que sera si tan bien que funcionaba y lo tengo sobre linux y con 1.5 gb de memoria ram en el servidor mmmmmmmmm...., pues yendo a la configuración del openfire me doy cuenta que lo 64 mb de ram que la maquina virtual java obtiene para el por default ya estaba al 100 %.
Sin darme casi cuenta el numero de clientes conectados a mi sistema de mensajeria corporativo aumento, igual los plugins que le he instalado y pues el consumo de memoria se fue hacia arriba.
Buscaba dentro de la interfaz grafica web del spark donde cambiar este parametro pero nunca que lo encontre, pues ya leyendo cai en cuenta que el parametro 64 mb ram es un default que la maquina virtual de java se autoasigna y que si se quiere aumentar entonces se debe especificar al momento de lanzar el programa java deseado.
Encontre muchos maneras de hacerlo para diferentes programas pero yo lo necesitaba para openfire asi que entre buscandole e intentandole prueba y error di con la solución para aumentar la memoria de java para openfire.

Tan sencillo como editar el script openfire (ubicado en openfire/bin/openfire), y descomentar la linea que dice INSTALL4J_ADD_VM_PARAMS y agregar a esta linea lo siguiente "-Xms128m -Xmx256m" asi que la linea completa nos quedaria:
INSTALL4J_ADD_VM_PARAMS="-Xms128m -Xmx256m"

Adjunto dos imagenes sobre donde esta ubicada la linea a agregar y como se ve despues el monto de memoria ram asignado para nuestro servidor openfire en este caso.


(ACTUALIZACION JUNIO 2010)

Actualmente tengo openfire (3.6.4) en un servidor con sistema operativo ubuntu (debian), pero no estoy usando el programa que viene en el sistema de paquetes pues era un versión anterior a la disponible en el sitio de IGNITE en ese momento.

En las nuevas versiones de openfire al parecer esta manera de aumentar la memoria que había descrito antes ya no funciona, en la versión 3.6.4 de openfire una manera que a mi me funciono para aumentar la memoria es la siguiente:

Crear un archivo llamado openfire.vmoptions en el mismo directorio donde este el binario de openfire, en mi caso
/home/usuario/openfire/bin, en ese archivo agregar las siguientes dos líneas:
-Xms512m
-Xmx824m

La segunda linea es el tope máximo de memoria que queremos asignar al programa servidor openfire, para comprobar que en efecto openfire ha tomado el parametro de memoria nuevo que hemos agregado podemos ver el proceso (ps aux|grep openfire) y entre las líneas que nos arroja este comando debe aparecer openfire -Xms512m -Xmx824m -classpath, y claro en la pestaña servidor de la página de configuración spark también se refleja este cambio.

PORQUE AGREGAR MAS MEMORIA A OPENFIRE?

Algunos de los problemas y situaciones que a mi se me presentaron en el uso diario y que me motivo a aumentar la memoria al programa son los siguientes:

  • Algunos usuario se desconectaban repentinamente
  • Algunos usuarios no se podian conectar, esto aleatoriamente
  • No podia entrar a la página de configuración de openfire.
  • A veces nadie se podia conectar al servicio
  • El proceso de openfire (java) se iba a 100% y monopolizaba el cpu
  • Y otros mas que no recuerdo
Aumentando la cantidad de memoria que openfire pueda usar se resuelven estos problemas, claro siempre y cuando la cantidad de memoria RAM sea suficiente para soportar este aumento.