YoVDO

gRPC and Go: Developing Efficient and Type-Safe Services

Offered By: Linux Foundation via YouTube

Tags

gRPC Courses Go Courses Microservices Courses API Design Courses Cloud-Native Architecture Courses TLS Courses Protocol Buffers Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the development of efficient and type-safe services using gRPC and Go in this 42-minute conference talk by Clinton Kitson from {code}. Learn about gRPC's advantages over traditional REST APIs for modern cloud-native architectures. Discover how to define services using gRPC's interface definition language (IDL), create working services with various API styles, and generate code for Go. Dive into topics such as uni-directional and bi-directional streaming, integration with existing JSON environments, and implementing secure services. Gain insights on minimizing complexity, improving performance, and handling scenarios like currency services. Follow along with practical examples of IDL compilation, service method implementation, client-side calling, streaming updates, TLS setup, and error handling in Go.

Syllabus

Intro
Objectives
Minimize Complexity
The Situation Today
Scenario - A Currency Service
The Problem
A Self-Discoverable REST API
Attempts at solving this problem
Performance Examples - Dashboard
Creating a gRPC Service
IDL for Currency Service
Compile IDL into Code (Go language example)
Implement Service Methods (Go language example)
Calling Service from Client
Update IDL for Streaming
Update IDL with Streaming
A Server Stream Example - Server
A Server Stream Example - Client
TLS Setup - Server
TLS Setup - Client
RequestTimeouts
Extracting Objects from Error


Taught by

Linux Foundation

Tags

Related Courses

Разработка веб-сервисов на Go - основы языка
Moscow Institute of Physics and Technology via Coursera
Getting Started with Go
University of California, Irvine via Coursera
Concurrency in Go
University of California, Irvine via Coursera
Functions, Methods, and Interfaces in Go
University of California, Irvine via Coursera
Game Thinking: Juego y toma de decisiones
The Pontificia Universidad Javeriana via edX