Pregunta

Estoy corriendo bajo Apache mod_python. Si he entendido bien, cada proceso Apache se ejecuta su propio intérprete de Python.

¿Cuál sería la mejor manera de compartir una pequeña cantidad de datos a través de todos los procesos? Estoy hablando de unos pocos cientos de bytes aquí, por lo que la base de datos basada en algo completamente exagerado.

¿Fue útil?

Solución

Puesto en compartida memoria.

Otros consejos

La forma más rápida es utilizar el archivo IO. Un proceso escribe el archivo y el otro lo lee. Se puede utilizar el mmap módulo para hacer esto un poco más fluida. Una alternativa interesante que no he probado (aún) es utilizar algún derivado de multiprocessing.Manager para la comunicación entre los procesos. No he probado este último, que estaba buscando alguna manera de crear un semáforo proceso compartido.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top