Disponibilidad y continuidad
El compromiso de disponibilidad, las copias y qué te llevas si te vas.
Fichar
Gestionar
Cumplir
La ley
El día a día
img/labs-servidor-respaldo.webp
Ficheo funciona en un servidor en París. Ahora tiene un segundo servidor en Núremberg, en Alemania, de otro proveedor, que recibe cada cambio de la base de datos en el momento en que ocurre. Si un día cae la máquina principal entera, se pasa a él con una sola orden.
Lo pidió una empresa que venía de otro programa y quería saber, antes de cambiarse, qué pasa si algo falla. La respuesta honrada tenía dos partes. Si se cuelga el programa, la vigilancia de cada minuto lo reinicia solo en uno o dos minutos. Pero si lo que se cae es la máquina entera, reiniciar no sirve: falta el servidor mismo.
Para ese caso hacía falta otra máquina que ya tuviera los datos. Y que no estuviera en el mismo edificio ni dependiera de la misma empresa, porque lo que tumba un centro de datos suele tumbar todo lo que hay dentro.
El servidor principal está en París (Hostinger). El de respaldo, en Núremberg (Hetzner). Los dos dentro de la Unión Europea.
La base de datos del principal le manda al de respaldo cada cambio en el momento: un fichaje registrado en París ya está en Núremberg en el mismo instante, no al hacer la copia de la noche. Los documentos que se suben (justificantes, nóminas, logos) se copian cada minuto.
Mientras el principal funciona, el de respaldo no atiende a nadie: está en espera, al día y sin tocar nada. Así no hay dos servidores escribiendo a la vez.
Pasar al servidor de respaldo lo decide una persona y se hace con una sola orden, que además cambia la dirección de Ficheo para que apunte allí. Si el cambio fuera automático, un corte de red de unos segundos podría dejar dos servidores creyéndose el principal, cada uno con fichajes distintos. Eso es mucho peor que unos minutos sin panel.
Si alguna vez quedaran dos encendidos como principal, el más antiguo se aparta solo y deja de aceptar cambios.
Un plan que no se ha probado es una suposición. Por eso el cambio se ensaya en el propio servidor de respaldo, sin tocar el principal: se hace una copia de la base que tiene, se convierte en principal, se arranca Ficheo encima aislado de la red y se comprueba por https que el panel, la app y el fichaje responden. Al acabar, se deshace todo.
En el ensayo, el servidor de respaldo pasó a atender en 0,1 segundos y el programa arrancó en 0,6. El ensayo entero, del principio al final, duró 18 segundos. Contando lo que no se puede ensayar sin cortar —agrandar la máquina y que el cambio de dirección llegue a todo el mundo—, el cambio completo son de 5 a 10 minutos.
Durante el cambio no hay panel: no se puede consultar ni corregir nada. La app del móvil y la tablet de fichar guardan cada fichaje en su cola, con la hora del toque, y lo mandan al volver. Quien no pudo abrir la app en ese rato lo registra después, y el cambio queda en el historial.
Además de esto sigue habiendo una copia completa cada noche, cifrada y guardada en un segundo proveedor, fuera del centro de datos de París.
No. Lo da una persona con una sola orden, para que nunca haya dos servidores creyéndose el principal con fichajes distintos. Si solo se cuelga el programa, eso sí se reinicia solo en uno o dos minutos.
De 5 a 10 minutos el cambio completo. El servidor de respaldo pasa a atender en menos de un segundo; el resto es agrandar la máquina y que el cambio de dirección llegue a todos.
Lo registrado hasta el último instante ya está en el servidor de respaldo, porque recibe cada cambio al momento. Lo que se ficha en la app durante el cambio se guarda en el móvil y se manda al volver, con su hora.
El principal en París (Hostinger) y el de respaldo en Núremberg (Hetzner). Los dos en la Unión Europea.
El compromiso de disponibilidad, las copias y qué te llevas si te vas.
La disponibilidad medida cada minuto, con cada incidencia.
La app de fichar, la tablet y el panel de gestión, en castellano, catalán, gallego, euskera e inglés.
Creas la cuenta, das de alta a tu equipo y cada uno ficha desde su móvil. Lo que pidáis después, se propone en Labs.