View a markdown version of this page

Gerenciando a conversação na comunicação de microsserviços - Implementando microsserviços em AWS

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á.

Gerenciando a conversação na comunicação de microsserviços

A conversa se refere à comunicação excessiva entre microsserviços, o que pode causar ineficiência devido ao aumento da latência da rede. É essencial gerenciar o bate-papo de forma eficaz para que um sistema funcione bem.

Algumas ferramentas importantes para gerenciar o bate-papo são REST APIs, HTTP e APIs gRPC. APIs O REST APIs oferece uma variedade de recursos avançados, como chaves de API, limitação por cliente, validação de solicitações, AWS WAF integração ou endpoints de API privados. O HTTP APIs é projetado com recursos mínimos e, portanto, tem um preço mais baixo. Para obter mais detalhes sobre esse tópico e uma lista dos principais recursos disponíveis em REST APIs e HTTP APIs, consulte Escolha entre REST APIs e HTTP APIs.

Freqüentemente, os microsserviços usam REST sobre HTTP para comunicação devido ao seu uso generalizado. Mas em situações de alto volume, a sobrecarga do REST pode causar problemas de desempenho. É porque a comunicação usa o handshake TCP, que é necessário para cada nova solicitação. Nesses casos, a API gRPC é a melhor opção. O gRPC reduz a latência, pois permite várias solicitações em uma única conexão TCP. O gRPC também suporta streaming bidirecional, permitindo que clientes e servidores enviem e recebam mensagens ao mesmo tempo. Isso leva a uma comunicação mais eficiente, especialmente para transferências de dados grandes ou em tempo real.

Se a conversa persistir apesar de escolher o tipo certo de API, talvez seja necessário reavaliar sua arquitetura de microsserviços. A consolidação de serviços ou a revisão de seu modelo de domínio pode reduzir o tempo de conversação e melhorar a eficiência.

Usando protocolos e armazenamento em cache

Os microsserviços geralmente usam protocolos como gRPC e REST para comunicação (consulte a seção anterior Mecanismos de comunicação sobre.) O gRPC usa HTTP/2 para transporte, enquanto o REST normalmente usa HTTP/1.1. O gRPC emprega buffers de protocolo para serialização, enquanto o REST geralmente usa JSON ou XML. Para reduzir a latência e a sobrecarga de comunicação, o armazenamento em cache pode ser aplicado. Serviços como a Amazon ElastiCache ou a camada de cache no API Gateway podem ajudar a reduzir o número de chamadas entre microsserviços.