Posted by Javier Ignacio Aravena Claramunt | Posted on 20-05-2010
Category : Uncategorized
Varnish poder O2, el proxy reverso y acelerador web, no tiene una opción para volver a cargar las settings, o para revisar la sintaxis del archivo de configuración antes de reiniciar y darse cuenta de que faltaba un paréntesis en alguna parte… o al menos eso pensaba.
Resulta que en realidad Varnish soporta cargar varios scripts a la vez, lo que es bastante raro, pero por lo menos nos evita reiniciar el servicio de proxy, que nunca es bueno hacerlo. Es raro porque varnish levanta un servidor telnet para cambiarle las opciones mientras se ejecuta, así paremos la conversa y vamo a lo weno.
Lo primero es conectarse al servidor de telnet. El puerto se configura en la llamada del demonio, por lo que depende de la distro (en CentOs el archivo es /etc/sysconfig/varnish), y por defecto es el 6082. Si nos conectamos utilizando telnet localhost 6082 (la idea es cerrar este puerto a todo menos localhost)… no pasa nada. Podemos escribir help para ver la lista de comandos y sería. Para hacer el cambio de configuración, hay que saber el nombre que tiene puesto la configuración antigua. Esto se puede ver haciendo vcl.list.
Asumamos que el archivo cargado se llamaba root para varnish. Esto es lo que hay que hacer para actualizarlo:
vcl.load root1 <Ruta del archivo de configuración>
vcl.use root1
vcl.discard root1
Y listoco, ya se actualizó la configuración de varnish. Si el archivo tiene errores de sintáxis (ojo que los errores lógicos no los pesca), falla cuando hacemos el load, y nos dice lalinea y el error, para que lo podamos arreglarlo.
Posted by Javier Ignacio Aravena Claramunt | Posted on 28-11-2009
Category : Uncategorized
Probablemente lo mejor que ha salido de 4chan (No es que la barra sea muy alta, pero si es una muy buena historia, de donde sea que venga):
MESSAGE BEGINS
Posted by Javier Ignacio Aravena Claramunt | Posted on 25-11-2009
Category : Uncategorized
Tags: Programación, Python, Unix
Daemon no es demonio, pero así lo he visto mencionado harto en español así que dejemoslo en eso.
Estaba creando un pequeño servidor web en python (de hecho estaba utilizando BaseHTTPServer, así que no estaba haciendo el servidor en sí, sino el proveedor de contenido) porque necesitaba exportar un poco de información para otra aplicación, y no quería hacer que el server corriera un apache, pero mi programa se caía cada vez que cerraba el terminar, incluso cuando la corría con & para que se mantuviera en el fondo.
Finalmente encontré la solución en los internets, y resulta que el proceso no es tan simple como pensaba, pero no es díficil hacerlo (aunque todavía no entiendo porque es así). Para poder hacer que un demonio corra como tal, de forma independiente a tener una terminal hay que primero hacer un fork, cerrar el proceso original, intercambiar los file handlers por defecto para stdin, stdout y stderr por el filehandler de algún otro archivo, muy probablemente /dev/null, o el log del programa, utilizando dup2, y despues hacer un segundo fork (cerrando el programa original).
No entiendo porque el primer fork, pero funciona así.
Posted by Javier Ignacio Aravena Claramunt | Posted on 06-08-2009
Category : Uncategorized
Tags: Buddypress, Keyboard Cat, Laboratorio, Servicios, Wordpress, Wordpress-mu
Borré mi usuario para ver si se arreglaba, pero no. Al parecer, BuddyPress no pesca el blog que se crea automáticamente al registrarse. Para arreglarlo puedo desactivar la creación automática, o desactivar (o darle menos visibilidad) a buddypress… supongo que es asunto para la reunión.