Laura no ve su Bizum · Episodio 1 de 6
El extracto en una réplica
Los extractos del domingo y las fichas de Atención al cliente compiten con los pagos por la misma base de datos. Sacrificar extractos protegía los pagos, pero Laura seguía sin su extracto. Hay otra salida: dar a quien lee su propia máquina.
El punto de partida
Lo que no controlamos terminó un domingo por la tarde con un sacrificio explícito: para que los pagos con tarjeta pasaran, se rechazaban extractos. Funcionaba, pero Laura seguía sin su extracto. Y ahora hay más gente que lee: Atención al cliente abre la ficha de cada cliente que llama, y esa ficha también sale de Cuentas.
Hay otra salida: no hacer que lo que se lee compita con lo que se escribe, y darle a quien lee su propia máquina. Una réplica de lectura es una copia de la base de datos de Cuentas que se mantiene al día con los cambios de la primaria (la base de datos donde se escribe). Se puede leer de ella, pero no escribir.
El domingo, con réplicas
Seis pagos con tarjeta por segundo, y lecturas (extractos y fichas de Atención) a un ritmo tranquilo. Marca el pico: nueve lecturas por segundo, cada una de tres segundos. A la izquierda, todo entra por la primaria, como siempre. A la derecha, los pagos van a la primaria y las lecturas, a las réplicas. Empieza con una y ve añadiendo.
Qué ha pasado
- Sin separar, las lecturas se quedan con las doce plazas y los pagos esperan detrás. La red de tarjetas no espera más de tres segundos y los deniega.
- Con una réplica, los pagos no se enteran del pico. Aún se quedan lecturas fuera, pero lo que falla es una lectura, no un pago.
- Con tres réplicas, caben todas. La diferencia con el bulkhead del episodio 2 de Lo que no controlamos es que ahora no hace falta sacrificar nada: quien lee tiene sus propias plazas, en otra máquina.
Las lecturas escalan añadiendo réplicas. Las escrituras no: la primaria sigue siendo una, y todos los cambios pasan por ella. Y una réplica no es una copia de seguridad: lo que se borra en la primaria se borra también en ella.
¿Qué va a dónde?
No todo lo que se lee puede ir a la réplica. La réplica va por detrás de la primaria, unos milisegundos o unos segundos, y según lo que vaya a hacer quien lee con el dato, eso importa o no. Con la ficha de Atención, el extracto y los movimientos de la semana no pasa nada. Con el saldo con el que Tarjetas aprueba un pago, sí.
Aquí tienes siete peticiones del banco. Decide para cada una si va a la primaria o a la réplica, y mándalas todas.
La regla de reparto
- Las escrituras van a la primaria. La réplica no acepta cambios.
- Las lecturas que deciden algo con dinero van a la primaria. Con el dato viejo, Tarjetas aprobaría un pago que deja la cuenta en negativo o Operaciones dejaría pasar un Bizum por encima del límite.
- Las lecturas que solo muestran van a la réplica. Un extracto, una ficha, un informe de la semana: si llegan unos segundos tarde, nadie pierde nada.
Falta el caso del saldo de Laura justo después de enviar un Bizum. Parece de los que muestran, pero Laura acaba de cambiar ese dato y espera verlo. Mirándolo de cerca, es el problema que da título a la serie.
Para llevarse
- Una réplica de lectura da a quien lee su propia máquina: las lecturas crecen sin tocar a la primaria, y los pagos dejan de competir con los extractos.
- El reparto es una regla: lo que escribe o decide va a la primaria; lo que solo muestra, a la réplica.
- La réplica va por detrás. Es el precio de separar, y es una decisión de negocio cuánto retraso puede tolerar cada lector.
Laura envía un Bizum, abre su extracto y no está. Eso tiene un nombre y una causa.
Siguiente Episodio 2 · Laura no ve su Bizum Laura envía un Bizum, abre el extracto y no está. Retraso de replicación.