Saltar al contenido
Explorar conocimiento

concepto · intermedio · 2 min de lectura

Service Registry

Un Service Registry es una base de datos centralizada donde los servicios se registran al iniciarse y donde otros servicios consultan para descubrir direcciones de instancias disponibles.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • Service Registry as an architectural concept

No cubre

  • implementation details

Supone

  • The reader understands distributed systems concepts.

Resumen

Un Service Registry es el componente central del patrón Service Discovery. Funciona como una guía telefónica dinámica: cada servicio, al iniciarse, registra su dirección IP y puerto. Cuando un servicio necesita llamar a otro, consulta el registry para obtener una lista de instancias saludables.

A diferencia del discovery genérico —que incluye el mecanismo completo—, el registry es específicamente la base de datos que almacena y sirve esa información. Tecnologías como Consul, Eureka, etcd y Zookeeper implementan service registries con distintas garantías de consistencia.

Alcance y supuestos

Este paquete cubre el Service Registry como componente de service discovery, tecnologías y trade-offs de consistencia. Asume familiaridad con sistemas distribuidos.

Modelo mental

El tablero de llegadas y partidas de un aeropuerto. Cada vuelo —cada servicio— se registra al aterrizar y se da de baja al despegar. Cualquiera que quiera saber qué vuelos están disponibles mira el tablero. El service registry es ese tablero, actualizado en tiempo real.

Uso práctico

  • ✅ Servicios efímeros que cambian de IP constantemente —Kubernetes pods, instancias auto-scaling—.
  • ❌ Sistemas con DNS estático y pocas instancias: el registry agrega complejidad innecesaria.

Ejemplo trabajado: registro en Consul

Un servicio order-processor se registra en Consul al iniciar con su IP, puerto y health check HTTP. api-gateway consulta Consul para encontrar instancias de order-processor. Si una instancia falla el health check, Consul la marca como unhealthy y el gateway deja de enrutarle tráfico. Cuando se levanta una instancia nueva tras un deploy, se registra automáticamente.

Evidencia

  • Consul, Eureka y etcd son los registries más usados. Kubernetes implementa un registry integrado con sus objetos Service y Endpoints.

Fuentes citadas