Visão Geral
O Curso GraphQL and Microservices Architecture foi desenvolvido para profissionais que desejam dominar arquiteturas distribuídas modernas, integrando múltiplos microsserviços através de uma única camada unificada de GraphQL.
Durante o treinamento, o aluno aprenderá como criar APIs federadas usando Apollo Federation, construir Gateways GraphQL, integrar serviços independentes, aplicar padrões de comunicação assíncrona e síncrona, implementar segurança e praticar estratégias de observabilidade em sistemas distribuídos.
Ao final, os participantes serão capazes de construir e operar arquiteturas completas de microsserviços integradas via GraphQL, preparadas para alta escala e flexibilidade corporativa.
Objetivo
Após realizar este curso GraphQL and Microservices Architecture, você será capaz de:
- Projetar microsserviços integrados com GraphQL
- Criar APIs federadas usando Apollo Federation
- Construir um GraphQL Gateway para unificar múltiplos serviços
- Implementar comunicação síncrona e assíncrona entre serviços
- Criar resolvers distribuídos e independentes
- Escalar arquiteturas GraphQL com caching, batching e DataLoader
- Integrar serviços REST, bancos de dados e serviços externos
- Implementar segurança, autenticação e autorização distribuída
- Aplicar observabilidade e tracing em sistemas distribuídos
- Construir uma arquitetura completa de microsserviços com GraphQL
Publico Alvo
Indicado para:
- Desenvolvedores backend
- Engenheiros Full Stack
- Arquitetos de software
- Equipes de integração corporativa
- Times migrando de monólitos para microsserviços
- Profissionais que desejam dominar GraphQL em nível enterprise
Pre-Requisitos
-
- Conhecimento intermediário de Node.js
- Fundamentos de APIs e protocolos HTTP
- Noções de GraphQL (queries, mutations e resolvers)
- Noções de arquitetura de software
- (Opcional) Experiência com Docker ou Kubernetes
-
Materiais
Ingles/Portugues
Conteúdo Programatico
Module 1 – Introduction to Microservices + GraphQL
- Microservices architecture fundamentals
- Monolith vs microservices
- Why GraphQL fits distributed systems
- Communication patterns: sync vs async
- Understanding service boundaries
- Enterprise use cases for GraphQL in microservices
Module 2 – Core GraphQL Concepts for Distributed Systems
- GraphQL schemas, resolvers and types
- Query planning in distributed architectures
- Overfetching/underfetching in service-to-service communication
- Handling large data graphs
- Introduction to GraphQL Gateways
Module 3 – Apollo Federation Fundamentals
- What is Apollo Federation
- Federated schemas
- Entities and keys
- Shared types across services
- @requires, @provides, @key and @external directives
- Subgraphs and composition
Module 4 – Building Distributed GraphQL Services
- Creating independent GraphQL services (subgraphs)
- Resolving relations across multiple services
- Loading data through DataLoaders
- Distributed validation and error handling
- Federation best practices for large systems
Module 5 – Building the GraphQL Gateway
- Introducing Apollo Gateway
- Composing multiple subgraphs
- Query execution flow through the gateway
- Caching strategies for federated systems
- Distributed tracing and performance optimization
- Handling gateway failures and fallback strategies
Module 6 – Integrating Microservices
- Federating REST microservices into GraphQL
- Integrating databases independently
- Event-driven microservices: Kafka, RabbitMQ, SQS
- Using GraphQL Subscriptions for real-time communication
- Choreography vs orchestration in GraphQL services
Module 7 – Security in Distributed GraphQL Systems
- Authentication patterns
- Centralized vs decentralized authorization
- Token propagation across services
- Gateway-level security
- Protecting sensitive fields and operations
- Rate limiting and throttling strategies
Module 8 – Observability for Federated GraphQL
- Logging and structured logs
- Distributed tracing with OpenTelemetry
- Monitoring service health
- Error tracking and structured error responses
- Measuring latency and throughput
- GraphQL-specific telemetry
Module 9 – Deployment Strategies
- Containerizing subgraphs with Docker
- Deploying in Kubernetes
- Horizontal scaling of federated services
- Canary deployments and blue/green strategies
- Setting environment variables and secrets
- CI/CD pipelines for GraphQL microservices
Module 10 – Final Project (End-to-End Architecture)
Students will build a complete GraphQL-based Microservices Architecture, including:
- 3 independent subgraph services (ex: Users, Orders, Products)
- Apollo Gateway unifying all schemas
- Database integration per service
- Real-time subscription event
- Federated authentication
- Logging and observability
- Scalable deployment
TENHO INTERESSE