Questão nº 54
Questão de Tecnologia da Informação · FCC TRT15 2024 (nº 54)
Durante uma apresentação à equipe, um Técnico de TI afirmou, corretamente, que a principal função do Zuul no ecossistema de microsserviços é funcionar como um
- Agateway para roteamento de requisições, que um de seus filtros é o `RouteFilter` e que usa frequentemente a biblioteca Ribbon para balanceamento de carga. (alternativa correta)
- Bservice discovery para localizar outros serviços, que um de seus filtros é o `PostFilter` e que usa frequentemente a biblioteca Consul para guarda de módulos abertos.
- Csistema de cache para aumentar a performance, que um de seus filtros é o `LogFilter` e que usa frequentemente a biblioteca Zookeeper para balanceamento de carga.
- Dgateway de aplicação para executar roteamentos web, que um de seus filtros é o `PreFilter` e que usa frequentemente a biblioteca Hystrix para balanceamento de carga.
- Esistema de cache para armazenamento de dados, que um de seus filtros é o `GatewayFilter` e que usa frequentemente a biblioteca Eureka para guarda de módulos abertos.
Resposta comentada
Gabarito Alternativa A
O Zuul atua como a porta de entrada principal para os microsserviços, recebendo todas as requisições externas e as direcionando para o serviço correto. Ele é um API Gateway, um ponto único de entrada para o sistema.
(A) Correta: A principal função do Zuul é ser um gateway para roteamento de requisições, ou seja, ele direciona as solicitações para o microsserviço apropriado. O `RouteFilter` é um dos filtros essenciais do Zuul, responsável por encaminhar a requisição para o serviço de destino. Além disso, o Zuul frequentemente se integra com a biblioteca Ribbon para realizar o balanceamento de carga do lado do cliente, distribuindo as requisições entre as instâncias disponíveis de um serviço.
(B) Incorreta: Zuul não é um service discovery (como Eureka ou Consul), ele usa o service discovery para encontrar os serviços. O `PostFilter` existe, mas a função principal está errada. Consul é para service discovery e configuração, não para "guarda de módulos abertos" no contexto de Zuul. Armadilha: Mistura componentes reais (Consul, PostFilter) com uma função incorreta para o Zuul, fazendo parecer plausível.
(C) Incorreta: Zuul não é primariamente um sistema de cache. Embora possa ter filtros para caching, essa não é sua função principal. Zookeeper é para coordenação distribuída, não para balanceamento de carga de requisições como o Ribbon.
(D) Incorreta: Embora seja um gateway para roteamento, a afirmação de que Hystrix é para balanceamento de carga está errada. Hystrix é para tolerância a falhas e circuit breaking, enquanto Ribbon é para balanceamento de carga.
(E) Incorreta: Zuul não é um sistema de cache. O termo `GatewayFilter` é mais associado ao Spring Cloud Gateway (o sucessor do Zuul) do que ao Zuul 1.x. Eureka é um servidor de service discovery, não para "guarda de módulos abertos" no contexto de Zuul.
Fonte: FCC TRT15 2024 Técnico Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.