FreeSWITCH: guardar core.db en la memoria RAM del servidor LINUX para mejorar las prestaciones

En FreeSWITCH muchos datos, entre ellos registros, llamadas y canales, se guardan, por defecto, en una base de datos SQLite; el nombre de este archivo es core.db y, dependiendo de su instalación, normalmente se encuentra en la carpeta:

ls -l /var/lib/freeswitch/db/

junto a otras base de datos utilizadas por FreeSWITCH. Pero, ¿Porque es tan importante especialmente esta base de datos? Porque se actualiza cada segundo y, dependiendo del tamaño de la instalación, pueden haber centenares de lecturas/escrituras y esto puede volverse el cuello de botella para el desempeño de FS.

Estas son las tablas presentes en la base de datos:

sqlite3 /var/lib/freeswitch/db/core.db

SQLite version 3.7.17 2013-05-20 00:56:22

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite> .tables

sqlite> .quit

Como pueden ver son tablas que en un sistema en producción, se actualizan constantemente. Para mejorar el desempeño de FreeSWITCH, en su configuración hay un parámetro que se puede modificar para que esa base de datos se guarde en la memoria RAM del servidor Linux. El cambio se realiza en el siguiente archivo:

nano /etc/freeswitch/autoload_configs/switch.conf.xml

modificando esta linea (que aparece comentada):

<!-- <param name="core-db-name" value="/dev/shm/core.db"/> -->

para que quede:

<param name="core-db-name" value="/dev/shm/core.db"/>

Se guardan los cambios y se reinicia FreeSWITCH:

systemctl restart freeswitch

Después de unos segundos, veremos efectivamente la base de datos en /dev/shm:

ls -l /dev/shm/

IMPORTANTE: cada vez que se reinicie el sistema, se perderán todos los datos guardados

Subscribe to Comments for "FreeSWITCH: guardar core.db en la memoria RAM del servidor LINUX para mejorar las prestaciones" Subscribe to VozToVoice - All comments