gRPC
-
Controle Seus Serviços Com OTEL, Jaeger e Prometheus
Vamos discutir uma questão importante: como monitoramos nossos serviços se algo der errado? Por um lado, temos Prometheus com alertas e Kibana para dashboards e outras funcionalidades úteis. Também sabemos como coletar logs — a pilha ELK é nossa solução preferida. No entanto, o registro simples nem sempre é suficiente: ele não fornece uma visão holística da jornada de uma requisição através de todo o ecossistema de componentes. Você pode encontrar mais informações sobre ELK aqui. Mas e se quisermos…
-
Rastreamento com OpenTelemetry e Jaeger
Rastreio, um componente crítico, acompanha pedidos através de sistemas complexos. Esta visibilidade revela engarrafamentos e erros, permitindo resoluções mais rápidas. Em um post anterior da nossa série de serviços web Go, exploramos a importância da observabilidade. Hoje, iremos concentrar-nos no rastreio. O Jaeger coleta, armazena e visualiza traços de sistemas distribuídos. Ele fornece insights cruciais sobre o fluxo de pedidos entre serviços. Conectando o Jaeger com o OpenTelemetry, os desenvolvedores podem unificar seu método de rastreamento, garantindo visibilidade consistente e…
-
5 Passos para Integração do Istio com OPA
Autenticação e Autorização são grandes partes do puzzle de segurança que precisa ser resolvido por arquitetos de nuvem e engenheiros DevOps. Neste blog, vamos olhar especificamente em como alcançar autorização/controle de acesso; ou seja, quais ações a entidade autenticada pode executar na mesh de serviços Istio. Isso ajuda a segurar a infraestrutura impedindo ações com intenções maliciosas. A autorização em uma mesh de serviços pode ser definida usando políticas OPA. OPA é um mecanismo que ajuda os funcionários DevOps a…
-
gRPC vs REST: Comparando Abordagens para Criar APIs
No texto de hoje, quero dar uma olhada mais detalhada em gRPC e REST, provavelmente duas das abordagens mais comumente utilizadas para criar APIs hoje em dia. I will start with a short characteristic of both tools — what they are and what they can offer. Then I will compare them according to seven categories, in my opinion, most crucial for modern-day systems. As categorias são as seguintes: Protocolos HTTP subjacentes Formatos de dados suportados Tamanho dos dados Throughput Definições Facilidade de…
-
Criar um Servidor de Chat Simples com gRPC no .Net Core
Neste artigo, criaremos uma simples aplicação de servidor de chat gRPC concorrente. Utilizaremos o .NET Core, uma plataforma modular, de código aberto e multiplataforma, para construir nossa aplicação de servidor de chat. Abordaremos os seguintes tópicos: A brief introduction to gRPC Configuração do ambiente gRPC e definição do contrato de serviço Implementação do serviço de chat e tratamento das requisições dos clientes Tratamento de múltiplos clientes de forma concorrente usando programação assíncrona Transmissão de mensagens de chat para todos os…
-
gRPC no lado do cliente
A maioria dos componentes de comunicação entre sistemas que utilizam REST serializam seus payloads em JSON. Atualmente, o JSON carece de um padrão de validação de esquema amplamente utilizado: JSON Schema não é difundido. A validação de esquema padrão permite delegar a validação a uma biblioteca de terceiros e pronto. Sem um padrão, precisamos recorrer à validação manual no código. Pior ainda, devemos manter o código de validação em sincronia com o esquema. O XML possui validação de esquema prontamente…
-
Compreendendo Conceitos, Casos de Uso e Melhores Práticas do gRPC
À medida que avançamos no desenvolvimento de aplicativos, entre várias coisas, há uma principal coisa sobre a qual estamos menos preocupados: poder de computação. Isso porque, com a chegada dos provedores de nuvem, estamos menos preocupados em gerenciar centros de dados. Tudo está disponível em segundos sob demanda. Isso leva a um aumento no tamanho dos dados também. Dados em massa são gerados e transportados usando vários meios em solicitações únicas. Com o aumento no tamanho dos dados, temos atividades…
-
Uma Exploração Aprofundada de REST, gRPC e GraphQL em Projetos Web
No cenário dinâmico do desenvolvimento web, a escolha de uma tecnologia de API desempenha um papel crucial na determinação do sucesso e da eficiência de um projeto. Neste artigo, iniciamos uma exploração abrangente de três concorrentes proeminentes: REST, gRPC e GraphQL. Cada uma dessas tecnologias traz seu próprio conjunto de forças e capacidades à mesa, atendendo a diferentes casos de uso e cenários de desenvolvimento. O que é REST? API REST, ou Interface de Programação de Aplicativos de Transferência de…
-
gRPC vs. REST: Diferenças, Semelhanças e Por Quê Usá-los
A arquitetura cliente-servidor popular divide a comunicação em duas partes: uma que assume todas as tarefas pesadas e fornece serviços, conhecida como servidor, e a outra que aproveita esses serviços, conhecida como cliente. Em geral, na comunicação cliente-servidor, o cliente simplesmente envia uma solicitação pedindo recursos ou serviços ao servidor, e o servidor responde a essa solicitação. Para a comunicação cliente-servidor, clientes e servidores precisam ter bibliotecas que possam entender o protocolo no qual estão se comunicando. Um protocolo é…