Cloudflare presenta Meerkat, un servicio de consenso distribuido basado en QuePaxa

Fuentes: Introducing Meerkat- an experiment in global consensus

Cloudflare ha presentado Meerkat, un servicio experimental de consenso distribuido en fase de desarrollo, diseñado para coordinar el estado del plano de control entre sus más de 330 centros de datos en todo el mundo. La empresa necesitaba un sistema que garantizara consistencia fuerte y disponibilidad de escritura incluso ante caídas de servidores, cortes de enlaces o degradación de red, condiciones habituales en una red de área extensa como la suya.

Los algoritmos de consenso más extendidos, como Raft, presentan limitaciones en este tipo de redes porque dependen de un líder único y de timeouts: si el líder falla, el sistema queda indisponible hasta que se agota el tiempo y se elige uno nuevo, algo difícil de configurar con latencias impredecibles. Cloudflare asegura haber sufrido múltiples incidentes por este motivo en sistemas basados en consenso.

Meerkat se apoya en QuePaxa, un algoritmo publicado en 2023 por investigadores de la EPFL. A diferencia de Raft, todas las réplicas pueden realizar escrituras en todo momento y el progreso nunca se detiene por un timeout, lo que lo hace adecuado para la topología global de Cloudflare. Sobre el registro de consenso, la compañía construye aplicaciones como un almacén clave-valor transaccional y un sistema de arrendamientos distribuidos. Será, según la empresa, el primer despliegue industrial de QuePaxa a escala global.

El servicio se usará inicialmente para gestionar pequeñas porciones de estado del plano de control, como el liderazgo de bases de datos replicadas, y permanecerá como herramienta interna. La entrada describe además los requisitos de consistencia linealizable y tolerancia a fallos, y adelanta que el almacén clave-valor ofrecerá además serializabilidad, un aspecto que se detallará en publicaciones posteriores.