📊 Capítulo 20: Projeto Integrador: Gateway de Pagamentos
Especialização Backend com Java 21 & Spring Boot 3
🗺️ A Arquitetura do Projeto Integrador de Pagamentos
flowchart TD
API["API Externa (POST /api/v1/pagamentos)"]
--> AUTH["Filtro JWT & Rate Limiting TokenBucket"]
--> VTHREAD["Java 21 Virtual Threads (Throughput Massivo)"]
--> SERVICE["PagamentoService (@Transactional / Idempotente)"]
--> CB["Resilience4j Circuit Breaker"]
CB --> ADQ["Adquirente Bancária Externa (Cielo / Stripe)"]
SERVICE --> AUDIT["Auditoria JSON Imutável (PostgreSQL + JPA)"]
SERVICE --> KAFKA["Evento Kafka (pagamentos.confirmados)"]
SERVICE --> METRICS["Métricas Micrometer (Prometheus / Grafana)"]
style API fill:#ede7f6,stroke:#512da8,stroke-width:2px
style AUTH fill:#fff3e0,stroke:#ff9800,stroke-width:1.5px
style VTHREAD fill:#e1f5fe,stroke:#03a9f4,stroke-width:2px
style SERVICE fill:#e8f5e9,stroke:#4caf50,stroke-width:2px
style CB fill:#ffebee,stroke:#d32f2f,stroke-width:1.5px
style AUDIT fill:#c8e6c9,stroke:#2e7d32,stroke-width:1.5px
style KAFKA fill:#ede7f6,stroke:#7e57c2,stroke-width:1.5px
style METRICS fill:#fff9c4,stroke:#fbc02d,stroke-width:1.5px
🎯 Slide 1: Java 21 Virtual Threads no Spring Boot 3.2+
# Habilitando Virtual Threads globalmente no Tomcat embutido
spring.threads.virtual.enabled=true
- Milhões de Threads Concorrentes: Cada requisição I/O (banco, chamadas HTTP) roda em uma thread virtual leve gerenciada pela JVM com custo de memória de meros kilobytes.
🎯 Slide 2: Idempotência Estrita & Resiliência
-
Chave de Idempotência (
Idempotency-Key): Impede cobranças duplicadas em caso de retransmissão ou timeout de rede. - Auditoria Imutável: Cada transação registra log de auditoria em JSON estruturado com carimbo de tempo ISO-8601 e hash criptográfico.
🎯 Slide 3: Checklist de Homologação para Produção
- Segurança: 100% dos endpoints protegidos com Spring Security 6 e JWT.
- Qualidade: Testes unitários com JUnit 5/Mockito e integração com Testcontainers.
- Resiliência: Circuit Breakers e Retries com Resilience4j.
- Observabilidade: Métricas exportadas via Actuator/Prometheus e traces correlacionados.
Slide 1 de 1
Atalhos: ← → Navegar • Espaço Avançar • F Tela Cheia • Home Início • End Fim