[pyar] File lock

Roberto Alsina ralsina en netmanagers.com.ar
Lun Jul 5 21:32:22 ART 2010


On Monday 05 July 2010 21:13:59 Andrés Gattinoni wrote:
> Para comunicar muy sencillamente dos aplicaciones (una aplicación web
> en PHP y un script en Python), quiero utilizar un archivo. La idea es
> que la aplicación en PHP pueda encolar comandos en el archivo, y que
> el script en Python los desencole y procese. Sé que no es la opción
> más óptima, pero por cuestiones que exceden el prístino, formal y
> lógico mundo del código, debo hacerlo así.

Sí, podés pero hay maneras mejores. Por ejemplo, la que uso yo para esa clase 
de problemas es:

Del lado del "encolador":

* Creo un archivo temporal seguro
* Escribo el comando adentro
* Lo muevo a una carpeta

Del lado del "desencolador":

* Hago un listado de la carpeta
* Abro el archivo más nuevo
* Le hago un "unlink"
* Lo leo
* Lo cierro

Esto no requiere locking, no tiene race conditions, y te garantiza que el 
cuelgue de uno de los dos componentes no te cuelgue el otro.



More information about the pyar mailing list