Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

1
resposta

Dúvida ECS: Usar uma única Task Definition (com todos os containers) para múltiplos Services cria redundância?

Olá! Estou com uma dúvida sobre a estratégia de deploy no ECS.

Notei que foi criada uma única Task Definition contendo todos os 4 containers (microserviços). No entanto, em seguida, foram criados 4 Services distintos utilizando essa mesma Task Definition.

Isso não gera uma redundância desnecessária? Pela minha análise, se cada Serviço subir 1 cópia dessa Task, teremos o stack inteiro (4 containers) rodando repetidamente para cada serviço (totalizando 16 containers). Por exemplo, o auth-service estaria rodando "de carona" os containers de order, product e user sem necessidade.

Essa é uma abordagem padrão ou foi feita apenas para fins didáticos de simplificação?

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Olá Leônidas! Como vai?

No Amazon ECS, uma Task Definition pode ser vista como uma "receita" que define quais containers devem ser executados juntos. Quando você usa a mesma Task Definition para múltiplos Services, cada Service irá, de fato, iniciar todos os containers definidos na Task, mesmo que apenas um deles seja necessário para aquele Service específico.

No seu caso, se cada Service está rodando uma cópia completa da Task Definition, isso pode resultar em redundância, como você mencionou, com múltiplas instâncias dos mesmos containers sendo executadas desnecessariamente.

Essa abordagem pode ser usada para simplificação didática, mas em um cenário de produção, geralmente é mais eficiente criar Task Definitions específicas para cada Service. Dessa forma, cada Service executa apenas os containers que realmente precisa, evitando o uso excessivo de recursos.

Por exemplo, você poderia ter uma Task Definition para o auth-service que inclui apenas o container de autenticação, outra para o order-service com apenas o container de pedidos, e assim por diante. Isso ajuda a otimizar o uso de recursos e pode reduzir custos.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.