We may earn an affiliate commission when you visit our partners.
Marco Feregrino

Descubre gRPC: El Framework de APIs Que Potencia a Gigantes Tecnológicos

¿Quieres elevar tus habilidades en desarrollo de APIs a un nuevo nivel? ¿Sabías que empresas líderes como Google, Netflix y Dropbox confían en gRPC para su arquitectura de microservicios? Aquí está tu oportunidad de aprender por qué y cómo.

Beneficios Exclusivos de Este Curso:

Read more

Descubre gRPC: El Framework de APIs Que Potencia a Gigantes Tecnológicos

¿Quieres elevar tus habilidades en desarrollo de APIs a un nuevo nivel? ¿Sabías que empresas líderes como Google, Netflix y Dropbox confían en gRPC para su arquitectura de microservicios? Aquí está tu oportunidad de aprender por qué y cómo.

Beneficios Exclusivos de Este Curso:

  • Alcance Multilingüe: Aprende a crear microservicios en múltiples lenguajes sin sacrificar la comunicación fluida entre ellos.

  • Mindset de gRPC: No solo te enseñamos la técnica, sino también la mentalidad detrás de gRPC, para que puedas aplicarla de manera efectiva en tus proyectos.

  • Manos a la Obra: Conviértete en un experto en definir archivos 'proto' y generar código en varios lenguajes en tiempo récord.

  • Implementación Real: A través de ejemplos prácticos y casos de uso, dominarás la implementación de servicios con Protocol Buffers, el motor detrás de gRPC.

¿Qué vas a lograr con este curso?

  • Diseñarás APIs más eficientes y robustas.

  • Serás más valorado en el mercado laboral al manejar la tecnología de vanguardia que las grandes empresas buscan.

  • Ahorrarás tiempo y recursos en tus proyectos, gracias a la alta eficiencia de gRPC.

No pierdas más tiempo, domina gRPC ahora y conviértete en el experto en APIs que el mercado demanda.

Espero que esta versión mejorada cumpla con tus expectativas para aumentar la tasa de conversión. ¿Qué opinas?

Enroll now

What's inside

Learning objectives

  • Aprender teoría de grpc y comprender cómo funciona grpc
  • Hacer tu definición de grpc en archivos proto
  • Implementar y comprender los tipos implement unary, server streaming, client streaming & bi-directional streaming de servicios
  • Comprender y comparar los paradigmas grpc and rest ap
  • Crear un servidor & cliente en golang usando el plugin de proto grpc
  • Implementarás un api crud con mongodb

Syllabus

Introducción
Introducción a gRPC
Objetivo del Curso
Recursos del curso
Read more
Daremos un breve repaso a protocol Buffers
[Teoría] Introducción

Comprender qué contiene y cómo esta estructurada la documentación de los protocol buffers


https://developers.google.com/protocol-buffers/docs/proto3

Setup Visual Code

Serás capaz de comprender un proto file y poder generar definiciones contract-first para tus servicios

Setup protoc compiler
Prueba de generación de código
Ejercicio Protobuf de Post de blog
En esta sección veremos temas técnicos y teóricos acerca de cómo funciona gRPC, por ejemplo HTTP2, por quñe usarlo, escalabilidad, protocol buffers

En el video verás como funciona gRPC con HTTP2 y conceptos de los streams asi como frames y mensajes

HTTP2 vs HTTP1 : https://imagekit.io/demo/http2-vs-http1

Veremos a detalle cuáles y cómo funcionan los patrones de comunicación que maneja gRPC.

También veremos Casos de Usos de cada patrón.

Al final del video comprenderás técnicamente cómo funciona cada patrón.

gRPC vs REST vs GraphQL
Ejemplo de Patrones conviviendo

Preguntaremos acerca de algunos conceptos que ya hemos visto.

En esta sección instalaremos dependencias, veremos que herramientas utilizar y las probaremos antes de empezar de lleno
Herramientas (Golang, Visual Code + Protoc)
Dependencias de Golang
Test de generación de código
Implementaremos los boilerplate del servidor y cliente en GO que estaremos usando en los proyectos
Boilerplate Go Server
Boilerplate Go Client
Veremos qué es y cómo usar el patrón unario de gRPC
Introducción del servicio Unary Hello

Veremos la definición del Servicio unary Hello y también generaremos el código.

También daremos un vistazo al código generado

Implementaremos el servidor en GO del servicio Hello

Veremos como leer información de la estructura request y como preparar el response

Aprendermos cómo enviar una petición unary y también como leer la respuesta del servidor

[Tarea] Servicio de recordatorios
[Práctica] Patrón Server Streaming gRPC
Introducción del servicio Server Streaming Hello Many Languages
Definición del API
Implementación de Server Streaming API server
Implementación de Server Streaming API client
[Tarea] Tasa de cambio entre divisas
[Práctica] Patrón Client Streaming gRPC
Introducción client streaming gRPC
Implementación de Client Streaming API server
Implementación de Client Streaming API client
[Tarea] Shipping stream
[Práctica] Patrón Bidireccional Streaming
Introducción bidireccional streaming
Implementación de Bidireccional Streaming API server
Implementación de Bidireccional Streaming API client
Buenas practicas
Manejo de Errores en gRPC

Explicaremos como manejar los errores y como implementares a la hora de regresarlos y leerlos

También veremos cómo usar un external protobuf de google !

SSL comandos

Generaremos los certificados y llaves para poder usar una comunicación SSL

Haremos la implementación de SSL en los servicios de hello para tener una comunicación segura

[Práctica] CRUD API con MongoDB
Instalando MongoDB
Creando Proto y Servidor
Configurando MongoDB Driver Golang
Create Product Server
Create Product Client
Get Product Server
Get Product Client
Update Product Server
Update Product Client
Delete Product Server
Delete Product Client
List Products Server
List Products Client
Despedida
Hasta luego !

Save this course

Save Dominando gRPC: El Framework de APIs que Impulsa a las Grand to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Dominando gRPC: El Framework de APIs que Impulsa a las Grand with these activities:
Repasar los fundamentos de Protocol Buffers
Refresca tus conocimientos sobre Protocol Buffers antes de comenzar el curso. Esto te ayudará a comprender mejor cómo gRPC serializa los datos y optimiza la comunicación.
Browse courses on Protocol Buffers
Show steps
  • Lee la documentación oficial de Protocol Buffers.
  • Escribe algunos archivos .proto de ejemplo.
  • Genera código a partir de los archivos .proto en tu lenguaje preferido.
Lee 'Building Microservices' de Sam Newman
Aprende sobre la arquitectura de microservicios para comprender mejor el contexto en el que gRPC es más útil. Este libro te ayudará a diseñar APIs más eficientes y robustas.
Show steps
  • Lee los capítulos relevantes sobre diseño de APIs y comunicación entre microservicios.
  • Toma notas sobre los patrones de diseño que se pueden aplicar a gRPC.
Implementar servicios gRPC sencillos
Practica la implementación de servicios gRPC sencillos para familiarizarte con el flujo de trabajo y la sintaxis. Esto te ayudará a consolidar tu comprensión de los conceptos básicos.
Show steps
  • Define un archivo .proto para un servicio sencillo.
  • Genera el código del servidor y del cliente en Golang.
  • Implementa la lógica del servidor para el servicio.
  • Implementa el cliente para enviar peticiones al servidor.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Lee 'gRPC: Up and Running' de Kasun Indrasiri y Danesh Kuruppu
Profundiza tus conocimientos sobre gRPC con esta guía práctica. Aprenderás los conceptos básicos, los patrones de comunicación y las características avanzadas de gRPC.
Show steps
  • Lee los capítulos relevantes sobre los patrones de comunicación de gRPC.
  • Sigue los ejemplos de código del libro para implementar servicios gRPC.
Escribe una entrada de blog sobre gRPC vs REST
Investiga y compara gRPC con REST para comprender sus ventajas y desventajas relativas. Escribir una entrada de blog te obligará a organizar tus pensamientos y comunicar tus conocimientos de manera efectiva.
Show steps
  • Investiga las diferencias clave entre gRPC y REST.
  • Describe los casos de uso ideales para cada tecnología.
  • Escribe una entrada de blog clara y concisa que compare las dos tecnologías.
Crea un microservicio gRPC para la gestión de usuarios
Aplica tus conocimientos de gRPC para construir un microservicio completo. Este proyecto te permitirá practicar la implementación de todos los patrones de comunicación de gRPC y la integración con una base de datos.
Show steps
  • Define los archivos .proto para el servicio de gestión de usuarios.
  • Implementa el servidor gRPC en Golang.
  • Implementa el cliente gRPC en Golang.
  • Integra el servicio con una base de datos MongoDB.
  • Escribe pruebas unitarias para el servicio.
Contribuir a un proyecto de código abierto gRPC
Aplica tus conocimientos de gRPC contribuyendo a un proyecto de código abierto. Esto te permitirá aprender de otros desarrolladores y mejorar tus habilidades.
Show steps
  • Encuentra un proyecto de código abierto que use gRPC.
  • Identifica un problema o característica que puedas implementar.
  • Envía una solicitud de extracción con tu solución.

Career center

Learners who complete Dominando gRPC: El Framework de APIs que Impulsa a las Grand will develop knowledge and skills that may be useful to these careers:
Desarrollador de Microservicios
Un desarrollador de microservicios crea aplicaciones como un conjunto de pequeños servicios autónomos, modelados en torno a un dominio de negocio. Este curso es altamente relevante, ya que gRPC es ampliamente utilizado en arquitecturas de microservicios para permitir una comunicación eficiente entre los diferentes servicios. El curso enseña a crear microservicios multilingües, lo cual es una ventaja significativa en entornos de microservicios heterogéneos. Al dominar la implementación de servicios con Protocol Buffers, el motor detrás de gRPC, el desarrollador de microservicios puede asegurar una alta eficiencia y rendimiento en sus aplicaciones. El curso profundiza en el diseño e implementación de APIs robustas que impulsan a gigantes tecnológicos. La naturaleza práctica del curso, con ejemplos reales y casos de uso, ayuda al aspirante a desarrollador de microservicios a aplicar los conocimientos adquiridos de manera efectiva.
Ingeniero de API
Un ingeniero de API diseña, desarrolla y mantiene interfaces de programación de aplicaciones (API) que permiten la comunicación entre diferentes sistemas de software. Este curso ayuda a construir una base sólida en gRPC, un *framework* de APIs de alto rendimiento usado por empresas tecnológicas líderes. El curso cubre la definición de archivos 'proto' y la generación de código en varios lenguajes, lo cual es esencial para el desarrollo de APIs eficientes. Aprender sobre los diferentes patrones de comunicación de gRPC, como Unary, Server Streaming, Client Streaming y Bidireccional Streaming, prepara al aspirante a ingeniero de API para diseñar soluciones robustas y escalables. La implementación de un API CRUD con MongoDB complementa esta preparación. La comprensión de los paradigmas gRPC y REST API, también cubiertos en el curso, capacita a los ingenieros para tomar decisiones informadas sobre la arquitectura de las APIs.
Ingeniero de Backend
Un ingeniero de *backend* es el responsable de desarrollar y mantener la lógica del servidor, las bases de datos y las APIs que impulsan una aplicación. Este curso es esencial para cualquier ingeniero de *backend* que busque mejorar sus habilidades en el desarrollo de APIs modernas. El curso enseña a diseñar APIs eficientes y robustas utilizando gRPC, un *framework* de alto rendimiento utilizado por las grandes empresas tecnológicas. Aprender a definir archivos 'proto' y generar código en varios lenguajes facilita la creación de APIs que pueden ser utilizadas por diferentes clientes y plataformas. La implementación de un API CRUD con MongoDB, que se cubre en el curso, proporciona una experiencia práctica en el desarrollo de APIs completas. El ingeniero de *backend* podrá construir una base sólida en gRPC. Este curso ofrece una comprensión profunda del *framework*, desde la teoría hasta la implementación práctica.
Arquitecto de *Cloud*
Un arquitecto de *cloud* diseña y planifica la infraestructura de *cloud* para las aplicaciones de una empresa. Este curso, a través de la implementación de un API CRUD con MongoDB, proporciona experiencia práctica en el desarrollo de APIs completas, fundamental para la arquitectura de *cloud*. Este curso es muy útil, ya que gRPC es ampliamente utilizado en arquitecturas de *cloud* para permitir una comunicación eficiente entre los diferentes servicios. El curso enseña a crear microservicios en múltiples lenguajes, lo cual es una ventaja significativa en entornos de *cloud* heterogéneos. La implementación de servicios con Protocol Buffers, que se cubre en el curso, asegura una comunicación eficiente y robusta entre los diferentes servicios. El curso puede ayudar al arquitecto de *cloud* a diseñar e implementar arquitecturas de *cloud* escalables y de alto rendimiento.
Ingeniero de Software
Un ingeniero de software crea y mantiene aplicaciones de software. El conocimiento adquirido en este curso, como la definición de archivos 'proto' y la generación de código en varios lenguajes, es fundamental para el desarrollo de APIs eficientes. Este curso es muy relevante, ya que gRPC es una tecnología ampliamente utilizada para el desarrollo de APIs modernas. El curso enseña a diseñar APIs eficientes y robustas, lo cual es esencial para cualquier ingeniero de software que trabaje en el desarrollo de aplicaciones. La implementación de servicios con Protocol Buffers, que se cubre en el curso, asegura una comunicación eficiente y robusta entre los diferentes componentes de la aplicación. El curso profundiza en el diseño e implementación de APIs robustas que impulsan a gigantes tecnológicos. El curso puede ayudar al ingeniero de software a construir aplicaciones más eficientes y escalables.
Ingeniero de Integración
Un ingeniero de integración es el responsable de asegurar que diferentes sistemas de software puedan comunicarse e interactuar entre sí sin problemas. Para un ingeniero de integración, este curso es relevante, ya que gRPC es una tecnología clave para la integración de sistemas, especialmente en arquitecturas de microservicios. El curso enseña a crear microservicios en múltiples lenguajes, lo que facilita la integración de sistemas heterogéneos. La implementación de servicios con Protocol Buffers, que se cubre en el curso, asegura una comunicación eficiente y robusta entre los diferentes sistemas. El curso puede ayudar al ingeniero de integración a diseñar e implementar interfaces de programación de aplicaciones (APIs) que permitan la comunicación entre las aplicaciones. La comprensión de los paradigmas gRPC y REST API, también cubiertos en el curso, capacita a los ingenieros para tomar decisiones informadas sobre la arquitectura de las APIs.
Consultor de APIs
Un consultor de APIs asesora a las empresas sobre cómo diseñar, implementar y gestionar sus APIs de manera efectiva. Este curso, al cubrir los paradigmas gRPC y REST API, capacita al profesional para tomar decisiones bien informadas sobre la arquitectura de las APIs. Este curso es útil, ya que proporciona una comprensión profunda de gRPC, un *framework* de APIs de alto rendimiento utilizado por las grandes empresas tecnológicas. El curso enseña a diseñar APIs eficientes y robustas, lo cual es esencial para ayudar a las empresas a construir APIs que cumplan con sus necesidades. El curso también cubre la implementación de servicios con Protocol Buffers, lo cual es importante para asegurar la eficiencia y el rendimiento de las APIs. El consultor de APIs puede ayudar a sus clientes a comprender los beneficios de gRPC y a implementarlo en sus proyectos.
Desarrollador de software
Un desarrollador de *software* crea y mantiene aplicaciones de *software*. Este curso puede ser valioso, ya que gRPC es una tecnología moderna para la construcción de APIs. Al finalizar este curso, el desarrollador de *software* habrá diseñado APIs eficientes y robustas utilizando gRPC, lo cual es esencial para el desarrollo de aplicaciones. La capacidad de definir archivos 'proto' y generar código en varios lenguajes, que se adquiere en el curso, ayuda al desarrollador a crear APIs que pueden ser utilizadas por diferentes clientes y plataformas. Este aprendizaje impulsa los proyectos con alta eficiencia debido a la experiencia en la implementación de servicios con Protocol Buffers. Este curso puede ayudar al desarrollador de *software* a construir aplicaciones más eficientes y escalables.
Arquitecto de Soluciones
Un arquitecto de soluciones diseña y planifica la estructura de sistemas de software complejos para cumplir con las necesidades del negocio. Este curso puede ser valioso, ya que proporciona una comprensión profunda de gRPC, un *framework* de APIs que puede ser utilizado para construir soluciones escalables y de alto rendimiento. Conocer los diferentes patrones de comunicación de gRPC y cómo implementarlos permite al arquitecto de soluciones diseñar sistemas que se integren de manera eficiente. La capacidad de definir archivos 'proto' y generar código en varios lenguajes, que se adquiere en el curso, ayuda al arquitecto a especificar las interfaces entre los diferentes componentes del sistema. El curso puede facilitar la toma de decisiones informadas sobre la elección de tecnologías y arquitecturas para diferentes proyectos. El curso también profundiza en la comparación entre los paradigmas gRPC y REST para aplicaciones robustas.
Ingeniero de pruebas
Un ingeniero de pruebas es el responsable de asegurar la calidad del software mediante la creación y ejecución de pruebas. Este curso puede ser útil, ya que proporciona una comprensión de gRPC y cómo se utiliza para construir APIs. El curso enseña a diseñar APIs eficientes y robustas utilizando gRPC, lo cual es esencial para el desarrollo de aplicaciones. Al conocer los paradigmas gRPC y REST API, este curso guía a la creación de pruebas más completas. El ingeniero de pruebas podrá comprender cómo funcionan las APIs basadas en gRPC y cómo probarlas de manera efectiva. La comprensión de los diferentes patrones de comunicación de gRPC, Unary, Server Streaming, Client Streaming y Bidireccional Streaming, facilita la creación de pruebas exhaustivas que cubran todos los posibles escenarios.
Especialista en DevOps
Un especialista en DevOps trabaja para automatizar y optimizar los procesos de desarrollo y despliegue de software. Este curso puede ser útil, ya que gRPC facilita la creación de microservicios, que son una parte importante de muchas arquitecturas de DevOps modernas. El curso enseña a crear microservicios en múltiples lenguajes, lo cual es una ventaja significativa en entornos de DevOps heterogéneos. La implementación de servicios con Protocol Buffers, que se cubre en el curso, asegura una comunicación eficiente y robusta entre los diferentes servicios. El curso puede ayudar al especialista en DevOps a automatizar el despliegue y la gestión de aplicaciones basadas en gRPC. Al comprender los paradigmas gRPC y REST API, este curso ofrece una visión completa en la toma de decisiones sobre el diseño de APIs.
Analista de Sistemas
Un analista de sistemas estudia los sistemas informáticos de una organización y recomienda mejoras para hacerlos más eficientes. Este curso puede ser útil, ya que proporciona una comprensión de gRPC y cómo se utiliza para construir APIs. Al conocer los paradigmas gRPC y REST API, este curso puede guiar al analista en la toma de decisiones más informadas. El analista de sistemas puede comprender cómo gRPC puede ser utilizado para mejorar la eficiencia y el rendimiento de los sistemas informáticos de una organización, con base en la creación de microservicios multilingües propiciada por el curso. La implementación de servicios con Protocol Buffers, que se cubre en el curso, asegura una comunicación eficiente y robusta entre los diferentes sistemas. El curso ayuda al analista de sistemas a identificar oportunidades para mejorar la arquitectura de las APIs de una organización.
Ingeniero de datos
Un ingeniero de datos construye y gestiona la infraestructura de datos de una organización. Este curso puede ser útil, ya que proporciona una comprensión de gRPC y cómo se utiliza para construir APIs, a través de la implementación de un API CRUD con MongoDB. El curso enseña cómo los diferentes patrones de comunicación, como Unary, Server Streaming, Client Streaming y Bidireccional Streaming, permiten crear soluciones robustas y escalables para los sistemas de gestión de datos. El curso también profundiza en la comparación entre los paradigmas gRPC y REST API para aplicaciones robustas. El ingeniero de datos podrá comprender cómo gRPC puede ser utilizado para mejorar la eficiencia y el rendimiento de la infraestructura de datos de una organización.
Ingeniero de Confiabilidad del Sitio
Un ingeniero de confiabilidad del sitio (SRE) se enfoca en asegurar la disponibilidad, el rendimiento y la escalabilidad de los sistemas de software en producción. Este curso puede ser relevante, ya que gRPC es una tecnología que puede ayudar a construir sistemas más confiables y escalables. El curso enseña a diseñar APIs eficientes y robustas utilizando gRPC, lo cual es esencial para construir sistemas que puedan manejar grandes volúmenes de tráfico. El curso puede ayudar al ingeniero de confiabilidad del sitio a comprender cómo gRPC funciona y cómo puede ser utilizado para mejorar la confiabilidad del sitio. Al optimizar la automatización y reducir la intervención manual, este curso puede minimizar los tiempos de respuesta y mejorar la experiencia del usuario.
Científico de datos
Un científico de datos utiliza técnicas de análisis de datos para extraer conocimiento y *insights* de los datos. Este curso puede ser útil, ya que gRPC es una tecnología que puede ser utilizada para acceder a datos desde diferentes fuentes. Los científicos de datos pueden crear proyectos con mayor fluidez debido a la implementación y comprensión de los tipos Unary, Server Streaming, Client Streaming & Bi-Directional Streaming de servicios que ofrece este curso. El científico de datos podrá comprender cómo gRPC puede ser utilizado para acceder a datos desde diferentes fuentes y para construir modelos de *machine learning* más eficientes. Al impulsar la eficiencia de los proyectos con la experiencia de la implementación de servicios con Protocol Buffers, este curso enriquece la práctica del científico de datos.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Dominando gRPC: El Framework de APIs que Impulsa a las Grand.
Este libro proporciona una visión general completa de la arquitectura de microservicios. Cubre los principios, patrones y prácticas recomendadas para diseñar, construir e implementar sistemas de microservicios. Si bien no se centra específicamente en gRPC, comprender los microservicios es crucial para apreciar el valor de gRPC. Es más valioso como lectura adicional para comprender el contexto.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser