

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Comunicação síncrona
<a name="synchronous"></a>

Na comunicação síncrona, um cliente inicia uma solicitação para um serviço, conforme ilustrado no diagrama a seguir. Exemplos incluem uma solicitação para obter informações, como uma solicitação `HTTP GET`, ou uma solicitação para alterar dados, como uma solicitação `HTTP PUT`. Em ambos os casos, o cliente espera que o servidor responda antes de continuar. Chamadas síncronas são conhecidas da maioria dos desenvolvedores, são fáceis de implementar e solucionar problemas e, em muitos casos, são o padrão de comunicação amplamente aceito.

![Comunicação síncrona entre clientes e microsserviços, ou entre microsserviços.](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/modernization-integrating-microservices/images/synchronous-communication.png)


Os benefícios da comunicação síncrona incluem:
+ **Controle de fluxo previsível**: execução determinística e ciclos claros de solicitação/resposta que são mais fáceis de entender em comparação com a comunicação assíncrona.
+ **Forte consistência**: confirmação imediata de alterações de dados e atualizações de estado.
+ **Tratamento simples de erros**: propagação direta de erros e exceções.
+ **Fácil depuração**: rastreamento e monitoramento simples de solicitações.
+ **Suporte para protocolos**: protocolos bem estabelecidos, como HTTP e REST, que simplificam a implementação.

A comunicação síncrona tem algumas desvantagens:
+ **Acoplamento forte**: dependência direta dos serviços da disponibilidade uns dos outros.
+ **Impacto na rede**: aumento da carga da rede devido às conexões abertas constantes.
+ **Utilização de recursos**: maior uso de memória devido à manutenção dos estados de conexão.
+ **Falhas em cascata**: capacidade de os problemas em um serviço se propagarem rapidamente pelo sistema.