[Py-MAD] Charla diciembre 2013: "Técnicas y herramientas para diagnosticar y solucionar 'memory leaks'"
Jesus Cea
jcea at jcea.es
Thu Apr 3 20:31:23 CEST 2014
On 03/04/14 20:19, Jesus Cea wrote:
> Lee el RFC. Se implementa a nivel de malloc.
PEP, no RFC. Deformación profesional.
> Para hacer lo que dices, yo te recomendaría un sistema de persistencia
> tipo DURUS o ZODB. Si quieres hacerlo 100% transparente, para todos los
> objetos, te vas a cagar, porque si bien puedes volcar bloques directos
> de memoria a disco, éstos contienen punteros. Punteros que tendrás que
> reescribir al cargar los datos, o forzar a que se carguen en la misma
> posición.
Además, un volcado directo de memoria implica que los objetos
persistentes solo funcionarán en una versión CONCRETA y EXACTA de
python. Si cambias de versión o incluso recompilas tu versión actual,
katacrok. Y no de forma limpia con un mensaje de error de "versión
incompatible", sino con un coredump, corrupciones misteriosas,
funcionamiento errático...
No lo hagas.
En el servidor de IRC-Hispano hice algo parecido, para la base de datos
distribuída, pero con estructuras de datos muy sencillas que contenían
verificaciones y que si la verificación fallaba descartabas las
estructuras y las regenerabas de los datos originales, que es lo que
realmente importa.
http://hg.jcea.es/IRC/ircd/file/ef9f6b4641ff/ircd/s_bdd.c
Mira la rutina "mmap_cache". Empieza en la línea 1074.
Mi consejo: en Python, ni te lo plantees.
--
Jesús Cea Avión _/_/ _/_/_/ _/_/_/
jcea at jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/
Twitter: @jcea _/_/ _/_/ _/_/_/_/_/
jabber / xmpp:jcea at jabber.org _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 538 bytes
Desc: OpenPGP digital signature
URL: <https://lists.es.python.org/pipermail/madrid/attachments/20140403/b4b7b11b/attachment.asc>
More information about the Madrid
mailing list