FastAPI Backend Development Bootcamp · Aula

Descoberta de serviços e verificações de integridade

Aprenda como os microsserviços encontram uns aos outros dinamicamente e como as verificações de integridade mantêm o tráfego direcionado apenas para instâncias saudáveis.

Aula 4 de 413 etapas

Descoberta de serviços e verificações de integridade é uma aula grátis de FastAPI Backend Development Bootcamp no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de FastAPI Backend Development Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de FastAPI Backend Development Bootcamp inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

The Discovery Problem

In a microservices system, instances start, stop, and move across hosts constantly. Hardcoding IP addresses breaks immediately.

Service discovery lets a service find healthy instances of another service by name at runtime.

Client-Side vs Server-Side

Two patterns exist:

  • Client-side: the caller queries a registry and picks an instance
  • Server-side: a load balancer or gateway resolves the name and forwards the request

Service Registries

A registry stores live instances. Popular options include Consul, etcd, and Kubernetes DNS.

Services register on startup and deregister on shutdown.

Registering a Service

On boot, a service announces its address to the registry.

import httpx

async def register():
    await httpx.AsyncClient().put(
        "http://consul:8500/v1/agent/service/register",
        json={"Name": "orders", "Address": "10.0.0.5", "Port": 8000})

Why Health Checks Matter

A registered instance might still be broken. Health checks ensure the registry only routes to instances that are actually able to serve requests.

A FastAPI Health Endpoint

Expose a lightweight endpoint that returns quickly when the service is healthy.

from fastapi import FastAPI

app = FastAPI()

@app.get("/health")
def health():
    return {"status": "ok"}

Liveness vs Readiness

Two distinct checks:

  • Liveness: is the process alive? If not, restart it.
  • Readiness: can it serve traffic now with DB connected and caches warm? If not, hold traffic.

A Readiness Check

Readiness verifies downstream dependencies before accepting traffic.

from fastapi import Response, status

@app.get("/ready")
async def ready(response: Response):
    if not await db_is_up():
        response.status_code = status.HTTP_503_SERVICE_UNAVAILABLE
        return {"ready": False}
    return {"ready": True}

Kubernetes Probes

Kubernetes uses these endpoints as probes to manage pods automatically.

livenessProbe:
  httpGet:
    path: /health
    port: 8000
readinessProbe:
  httpGet:
    path: /ready
    port: 8000

Graceful Deregistration

On shutdown, deregister so callers stop routing to a dying instance, and finish in-flight requests first.

@app.on_event("shutdown")
async def shutdown():
    await deregister_from_registry()

TTL and Stale Entries

Registry entries usually carry a TTL. If a service stops sending heartbeats, its entry expires automatically so callers stop routing to a dead instance.

Quick Check

Test your discovery knowledge.

Recap

You learned how services find and trust each other:

  • Service discovery resolves services by name via a registry
  • Health checks ensure only healthy instances get traffic
  • Liveness restarts, readiness gates traffic

Together they keep a dynamic microservices system resilient.

Grátis para começar

Aprenda FastAPI Backend Development Bootcamp com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
21
Aulas
84

Perguntas Frequentes

A aula “Descoberta de serviços e verificações de integridade” é grátis?

Sim — o texto completo de “Descoberta de serviços e verificações de integridade” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de FastAPI Backend Development Bootcamp, atualize para CoddyKit PRO. O curso de FastAPI Backend Development Bootcamp inclui 4 aulas no total.

O que vou aprender em “Descoberta de serviços e verificações de integridade”?

Aprenda como os microsserviços encontram uns aos outros dinamicamente e como as verificações de integridade mantêm o tráfego direcionado apenas para instâncias saudáveis. Você pratica FastAPI Backend Development Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar FastAPI Backend Development Bootcamp?

Nenhuma experiência prévia é necessária. FastAPI Backend Development Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Descoberta de serviços e verificações de integridade”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de FastAPI Backend Development Bootcamp?

Sim. Cada aula de FastAPI Backend Development Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Projetando uma arquitetura de microsserviços
  2. Comunicação entre serviços
  3. Implementando um gateway de API com FastAPI
  4. Descoberta de serviços e verificações de integridade
← Voltar para FastAPI Backend Development Bootcamp