• Publicidad

memcache + Perl

Todo acerca de las bases de datos que existen: SQL, MySQL, Oracle, Postgres, CSV, etc.

memcache + Perl

Notapor xavieraviles » 2011-03-30 09:50 @451

Buenos días,
Estimados ONIOnSaurios.

Estoy un proyecto de una tienda web y voy a trabajar con Perl. Pero en mi hosting no puedo instalar una herramienta tipo "memcached". Mi consulta es: ¿Existe algún modulo de Perl que trabaje igual a "memcached"?
¿O algún módulo que emule el manejo de base de datos residente en memoria?

Gracias anticipadas.
Xavier.
xavieraviles
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2011-03-30 09:42 @446

Publicidad

Re: memcache + Perl

Notapor explorer » 2011-03-30 11:24 @516

Bienvenido a los foros de Perl en español, xavieraviles.

¿No te ofrece tu alojamiento ni una mísera base de datos MySQL? Vaya alojamiento más sospechoso...

Para usar una base de datos en memoria, se puede tener un proceso constantemente funcionando, o, como funciona memcached, un dæmon que acepte peticiones de otros procesos.

Tanto una como la otra solución implica que en el alojamiento se esté ejecutando un proceso de forma continua, y eso no suelen ofrecerlo todos los alojamientos.

Depende también de las prestaciones que busques en la base de datos, pero si, por ejemplo, se trata de hacer algo muy sencillo, se podría probar con una sqlite.

Si quieres ver el soporte de bases de datos que tiene Perl (al menos, la mayoría de controladores) puedes entrar en CPAN y buscar por "DBD".

DBD::RAM, por ejemplo, sí que almacena la información en memoria (y en ficheros). Trabaja con una u otra forma, pero si se termina el proceso, perderá toda la información que tenga en memoria. Si quieres almacenar la base de datos en disco antes de salir, puedes hacer un export() de la base de datos en memoria a un fichero. Y al revés: cuando comienza el proceso, puedes hacer un import() para leer la base de datos desde el fichero hacia la memoria. Tiene también la función catalog(), que permite tener sincronizadas las dos estructuras, por lo que no es necesario hacer un export() al final del proceso.

La desventaja de este módulo es que es del año 2000, por lo que no funciona más que con un Perl v5.6 (según aparece en la tabla de compatibilidades.

Es normal: la inmensa mayor parte de las gestiones con bases de datos se hacen con MySQL, Oracle, Informix, DB2, SQLite, ODBC, DBM, Google, MariaDB y PostgreSQL.

Una solución, de andar por casa, sería usar el módulo Storable, que permite guardar y recuperar estructuras de datos complejas a y desde disco.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: memcache + Perl

Notapor xavieraviles » 2011-03-31 18:48 @825

Muchas gracias por su respuesta.

En mi hosting sí me ofrece MySQL.

Pero estoy tratando de manejar en memoria la información de las sesiones. Además de algunos objetos, permisos, propiedades, etc. Para acceder más rápido y cada cierto tiempo volcar a una base de datos relacionar esta información.
xavieraviles
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2011-03-30 09:42 @446

Re: memcache + Perl

Notapor explorer » 2011-03-31 22:38 @985

La cuestión ahora es si el alojamiento te dejará hacer funcionar un dæmon o un programa durante toda la sesión, para que mantenga en memoria la información que quieres.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Bases de datos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados