gRPC
-
Controla tus servicios con OTEL, Jaeger y Prometheus
Hablemos de una pregunta importante: ¿cómo monitoreamos nuestros servicios si algo sale mal? Por un lado, contamos con Prometheus con alertas y Kibana para paneles y otras funciones útiles. También sabemos cómo recopilar registros: la pila ELK es nuestra solución preferida. Sin embargo, simplemente llevar un registro no siempre es suficiente: no proporciona una vista holística del recorrido de una solicitud a través de todo el ecosistema de componentes. Puedes encontrar más información sobre ELK aquí. Pero, ¿qué ocurre si…
-
Rastreo con OpenTelemetry y Jaeger
Rastreo, un componente crítico, sigue las solicitudes a través de sistemas complejos. Esta visibilidad revela las bottlenecks y los errores, permitiendo resoluciones más rápidas. En un post anterior de nuestra serie de servicios web de Go, exploramos la importancia de la observabilidad. Hoy, nos centraremos en el rastreo. Jaeger recopila, almacena y visualiza rastros de sistemas distribuidos. Proporciona insumos cruciales en los flujos de solicitudes entre servicios. Al integrar Jaeger con OpenTelemetry, los desarrolladores pueden unificar su enfoque de rastreo,…
-
5 pasos para integrar Istio con OPA
La autenticación y la autorización son grandes partes del rompecabezas de seguridad que deben resolverse por arquitectos de la nube y ingenieros de DevOps. En este blog, nos centraremos específicamente en cómo lograr la autorización/control de acceso; es decir, qué acciones puede realizar la entidad autenticada en la malla de servicios Istio. Ayuda a proteger la infraestructura evitando acciones de intenciones maliciosas. La autorización en una malla de servicios puede definirse usando políticas de OPA. OPA es un mecanismo que…
-
gRPC vs REST: Comparando enfoques para crear APIs
En el texto de hoy, quiero analizar más de cerca gRPC y REST, probablemente dos de las aproximaciones más comúnmente utilizadas para crear API en la actualidad. 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. Las categorías son las siguientes: Protocolos HTTP subyacentes Formatos de datos soportados Tamaño de los datos Rendimiento Definiciones Facilidad…
-
Crear un Servidor de Chat Simple con gRPC en .Net Core
En este artículo, crearemos una aplicación de chat gRPC simple y concurrente. Utilizaremos .NET Core, un marco de trabajo multiplataforma, de código abierto y modular, para desarrollar nuestra aplicación de chat. Cubriremos los siguientes temas: A brief introduction to gRPC Configuración del entorno gRPC y definición del contrato de servicio Implementación del servicio de chat y manejo de solicitudes de clientes Manejo de múltiples clientes de manera concurrente mediante programación asíncrona Transmisión de mensajes de chat a todos los clientes…
-
gRPC en el lado del cliente
La mayoría de los componentes de comunicación entre sistemas que utilizan REST serializan su carga útil en JSON. Hasta ahora, JSON carece de un estándar de validación de esquema ampliamente utilizado: JSON Schema no está muy extendido. La validación de esquemas estándar permite delegar la validación a una biblioteca de terceros y dejarlo ahí. Sin uno, debemos recurrir a la validación manual en el código. Peor aún, debemos mantener el código de validación sincronizado con el esquema. XML tiene validación…
-
Comprensión de los Conceptos de gRPC, Casos de Uso y Buenas Prácticas
A medida que avanzamos en el desarrollo de aplicaciones, entre varias cosas, hay una principal de la que estamos menos preocupados: el poder de cómputo. Debido a la llegada de los proveedores de nube, estamos menos preocupados por administrar centros de datos. Todo está disponible en cuestión de segundos bajo demanda. Esto también lleva a un aumento en el tamaño de los datos. Se generan y transportan grandes volúmenes de datos utilizando varios medios en solicitudes únicas. Con el aumento…
-
Una Exploración Detallada de REST, gRPC y GraphQL en Proyectos Web
En el dinámico panorama del desarrollo web, la elección de una tecnología API desempeña un papel fundamental en la determinación del éxito y la eficiencia de un proyecto. En este artículo, emprendemos una exploración integral de tres destacados contendientes: REST, gRPC y GraphQL. Cada una de estas tecnologías aporta su propio conjunto de fortalezas y capacidades al escenario, atendiendo a diferentes casos de uso y escenarios de desarrollo. ¿Qué es REST? API REST, o Interfaz de Programación de Aplicaciones de…
-
gRPC vs. REST: Diferencias, Similitudes y Por Qué Usarlos
La popular arquitectura cliente-servidor divide la comunicación en dos partes: una que se encarga de todas las tareas pesadas y proporciona servicios, conocida como servidor, y la otra que disfruta de esos servicios, conocida como cliente. En la comunicación cliente-servidor en general, el cliente simplemente envía una solicitud pidiendo recursos o servicios al servidor, y el servidor responde a esa solicitud. Para la comunicación cliente-servidor, tanto los clientes como los servidores necesitan tener bibliotecas que puedan entender el protocolo en…