Em outubro passado, meus colegas apresentaram na EnvoyCon a palestra "Construindo um Subsistema de Compressão Flexível no Envoy". Aqui está embaixo
A julgar pelas estatísticas do artigo de hoje deSergeAx, o tópico de compactação de tráfego de rede acabou sendo interessante para muitos. Nesse sentido, desejei imediatamente a glória universal e decidi recontar brevemente o conteúdo do relatório. Além disso, não se trata apenas de compressão, mas também de como você pode simplificar a manutenção do subsistema de rede do backend e do front-end móvel.
Não "novelizei" completamente o vídeo da palestra, mas apenas a parte dublada por José Nino. Vai interessar mais pessoas.
Para começar, o que é Envoy.
A descrição no site oficial é o seguinte. Envoy é um servidor proxy distribuído de alto desempenho projetado para serviços e aplicativos individuais e para funcionar como um barramento de comunicação em uma arquitetura de microsserviço, ou seja, em malhas de serviço, levando em consideração as lições aprendidas com NGINX, HAProxy ... e assim em.

O princípio de funcionamento de um servidor proxy é muito simples: o cliente estabelece uma conexão de rede não diretamente com o serviço, mas por meio de um servidor proxy, que, se necessário, por exemplo, comprime o tráfego de rede que passa por ele. Ou encerra o TLS. Ou, sem interromper a conexão com o cliente, tenta se reconectar a um serviço temporariamente indisponível. Ou, se tudo estiver muito ruim, conecte-se a um serviço de backup. Etc.
, , . .

, -, , . - — , , , .

.

(Edge), , , . Edge , (Sidecar). , , , Edge.
, , — . , . , , , .

, , Android. , Lyft , - , Envoy . , .. , .
, , Envoy .

Envoy Mobile, Java, Kotlin, Swift, Objective-C Envoy. .
Então, a tarefa de reduzir o volume de tráfego descrita no artigo da FunCorp poderia ser resolvida aproximadamente como na figura abaixo (se você trocar o compressor e o descompressor, e substituir resposta por solicitação). Ou seja, mesmo sem precisar instalar atualizações nos telefones.

Você pode ir mais longe e introduzir compressão bilateral

Em geral, o campo para experimentos em tal esquema aumenta muito de tamanho.