Questão nº 73
Questão de Boas Práticas e Padrões em TIC · FCC PMSP Analista TIC 2025 (nº 73)
A equipe de TI de uma prefeitura está desenvolvendo uma aplicação para integração com diversos serviços externos, utilizando arquiteturas serverless em um ambiente de nuvem. Para implementar a lógica que orquestra a comunicação entre serviços, a equipe considera adotar um design pattern adequado à abordagem serverless. Com base nas tendências emergentes, o design pattern mais indicado para lidar com a orquestração e controle de fluxos em arquiteturas serverless é o
- AObserver.
- BCircuit Breaker.
- CSaga. (alternativa correta)
- DProxy.
- EStrategy.
Resposta comentada
Gabarito Alternativa C
O padrão Saga é uma forma de gerenciar transações distribuídas, garantindo que operações complexas que envolvem múltiplos serviços independentes (cada um com seu próprio banco de dados) sejam concluídas de forma consistente, mesmo que uma parte falhe, através de uma sequência de transações locais e ações de compensação.
(A) Incorreta: O padrão Observer é sobre um objeto (sujeito) notificando outros (observadores) sobre mudanças de estado, o que é útil para comunicação reativa, mas não para orquestrar fluxos complexos e transações distribuídas.
(B) Incorreta: O Circuit Breaker é um padrão de resiliência que previne falhas em cascata ao isolar serviços que estão com problemas, mas não orquestra o fluxo de negócios ou gerencia a consistência de transações distribuídas. É um distrator tentador porque a resiliência é crucial em arquiteturas distribuídas, mas não é o foco da orquestração de fluxos.
(C) Correta: O padrão Saga é ideal para orquestrar a comunicação e controlar fluxos em arquiteturas serverless, especialmente quando se lida com transações distribuídas entre múltiplos serviços. Ele permite que um processo de negócios de longa duração seja executado por meio de uma sequência de transações locais, com mecanismos de compensação para reverter ações em caso de falha, garantindo a consistência eventual.
(D) Incorreta: O padrão Proxy fornece um substituto ou intermediário para controlar o acesso a um objeto, o que pode ser usado em API Gateways, mas não orquestra fluxos de negócios complexos ou transações distribuídas.
(E) Incorreta: O padrão Strategy permite que um algoritmo seja selecionado em tempo de execução, encapsulando diferentes comportamentos. Não tem relação direta com a orquestração de comunicação ou controle de fluxos entre múltiplos serviços em um ambiente distribuído.
Fonte: FCC PMSP Analista TIC 2025 Analista de Planejamento e Desenvolvimento Organizacional - Tecnologia da Informação e Comunicação (Caderno Tipo 001). Reproduzida para fins de estudo.