gRPC [Golang] Master Class: Build Modern API & Microservices
4.7 (1,204 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
11,101 students enrolled

gRPC [Golang] Master Class: Build Modern API & Microservices

Better than REST API! Build a fast scalable HTTP/2 API for a Golang micro service with gRPC, Protocol Buffers (protobuf)
Highest Rated
4.7 (1,204 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
11,101 students enrolled
Last updated 5/2020
English
Indonesian [Auto-generated], Italian [Auto-generated]
Current price: $90.99 Original price: $129.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 5.5 hours on-demand video
  • 11 articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn the gRPC theory to understand how gRPC works
  • Compare gRPC and REST API paradigm
  • Write your gRPC service definition in .proto files
  • Generate Server & Client Code in Golang using the protoc gRPC Plugin
  • Implement Unary, Server Streaming, Client Streaming & Bi-Directional Streaming API
  • Practice your learning with Exercises & Solutions
  • Implement advanced concepts such as Error Handling, Deadlines & SSL Security
  • Implement a full CRUD API on top of MongoDB
  • Get pointers to expand your learning journey and get inspired by real world gRPC services
Requirements
  • Good Understanding of Golang Programming Language
  • Good Understanding of Protocol Buffers
Description

gRPC is a new and modern framework for building scalable, modern and fast API. It is leveraged by many top tech companies such as Google, Square & Netflix and enables programmers to write micro-services in any language they want while keeping the ability to easily create communications between these services. It relies on Protocol Buffers for the transport mechanism and Service Definition language. 

In this course, we are going to explore in depth, with hands-on lectures, all the aspects to get started with gRPC.  

This course is hands-on and you will implement two services: Greet and a Calculator Service.

In just a few hours, you will know everything you need to know to write your .proto files, generate code in your Favourite Programming, and implement your services, servers and client in Golang. There will be plenty of hands-on lectures and exercises for you to practice your newly acquired skills. 

It's time to say goodbye to slow and clunky REST API, and opt-in for a better API framework. 

---------------------------------

gRPC Golang Master Class is the best way to get a great overview of all the possibilities offered by gRPC with your favourite language

> Learn the gRPC theory to understand how gRPC works
> Compare gRPC and REST API paradigm
> Write your gRPC service definition in .proto files
> Generate Server & Client Code in Golang using the Gradle gRPC plugin
> Implement Unary, Server Streaming, Client Streaming & Bi-Directional Streaming API
> Practice your learning with Exercises & Solutions
> Implement advanced concepts such as Error Handling, Deadlines & SSL Security
> Implement a full CRUD API on top of MongoDB
> Get pointers to expand your learning journey and get inspired by real world gRPC services

Note: This course expects you have some preliminary knowledge about Protocol Buffers and Golang. 

Instructor

Stephane Maarek is the instructor of this course. He is the author of highly successful courses such as Apache Kafka Series and AWS Series. He is passionate about micro-services and data. He has already taught to 40000+ students and received 12000+ reviews.

He shares all his Data knowledge on the platform, taking the time to explain every concept and provide students with both theoretical and practical dimensions. You are in good hands!

Section outline:

  • gRPC Course Overview: Get an understand of the course objectives, how the course is structured, download the course code and get ready!

  • [Theory] gRPC Internals Deep Dive: Learn how gRPC works behind the scenes. Learn about HTTP/2, Protocol Buffers efficiencies, and the differences of gRPC and REST.

  • [Hands-On] gRPC Project Overview & Setup: Setup your project using Gradle and learn how to trigger code generation

  • [Hands-On] gRPC Unary: API description & implementation

  • [Hands-On] gRPC Server Streaming: API description & implementation

  • [Hands-On] gRPC Client Streaming: API description & implementation

  • [Hands-On] gRPC Bi-Directional Streaming: API description & implementation

  • [Hands-On] gRPC Advanced Features Deep Dive: Advanced features such as Error Handling, Deadlines, SSL Security. 

  • Next Steps: Some useful real-world links & where to take your learning from here

This Course Also Comes With:

✔ Lifetime Access to All Future Updates

✔ A responsive instructor in the Q&A Section

✔ Links to interesting articles, and lots of good code to base your next template onto

✔ Udemy Certificate of Completion Ready for Download

✔ A 30 Day "No Questions Asked" Money Back Guarantee!

This is the course that could change your API skills.  

Learning and getting hands-on on gRPC helps you to enhance your career opportunities and helps to boost your income. An investment in your career is an investment in yourself.  Don’t procrastinate. There is no time like the present to take charge of your career. Take your career to the next level by learning GRPC today!

Take the course now, completely risk free !

Who this course is for:
  • Developers who want to understand how to write gRPC Services and Clients in Golang
  • Architects who want to understand how gRPC works and the concepts behind the different types of API
Course content
Expand all 72 lectures 05:34:07
+ gRPC Course Overview
4 lectures 13:57
Course Objective
02:47
About your instructor
02:20
Important Message
00:33
+ [Theory] gRPC Internals Deep Dive
8 lectures 31:00
Why this section?
00:14
HTTP/2
08:46
Scalability in gRPC
01:38
Security in gRPC (SSL)
01:12
gRPC vs REST
05:10
Section Summary - why use gRPC
00:44
Quiz on GRPC
5 questions
+ [Hands-On] gRPC Project Overview & Setup
5 lectures 18:16
Project Setup (Golang + VSCode + Protoc)
01:30
Go Dependencies Setup
01:00
Code Generation Test
04:40
Server Setup Boilerplate Code
05:51
Client Setup Boilerplate Code
05:15
+ [Hands-On] gRPC Unary
6 lectures 25:26
What's an Unary API?
01:32
Greet API Definition
04:05
Unary API Server Implementation
04:05
Unary API Client Implementation
06:16
[Exercise] Sum API
00:22
[Solution] Sum API
09:06
+ [Hands-On] gRPC Server Streaming
6 lectures 25:28
What's a Server Streaming API?
02:26
GreetManyTimes API Definition
02:44
Server Streaming API Server Implementation
04:28
Server Streaming API Client Implementation
06:09
[Exercise] PrimeNumberDecomposition API
00:37
[Solution] PrimeNumberDecomposition API
09:04
+ [Hands-On] gRPC Client Streaming
6 lectures 27:30
What's a Client Streaming API?
01:53
LongGreet API Definition
01:51
Client Streaming API Server Implementation
05:34
Client Streaming API Client Implementation
07:55
[Exercise] ComputeAverage API
00:24
[Solution] ComputeAverage API
09:53
+ [Hands-On] gRPC Bi-Directional Streaming
6 lectures 30:34
What's a Bi-Directional Streaming API?
01:39
GreetEveryone API Definition
01:35
Bi-Directional Streaming API Server Implementation
05:25
Bi-Directional Streaming API Client Implementation
09:57
[Exercise] FindMaximum API
00:24
[Solution] FindMaximum API
11:34
+ [Hands-On] gRPC Advanced Features Deep Dive
8 lectures 01:05:08
[Theory] Errors in gRPC
03:36
[Hands-On] Errors implementation
14:03
[Theory] Deadlines
02:18
[Hands-On] Deadlines
11:23
[Theory] SSL Security
05:38
[Hands-On] SSL Security
15:25
[Demo] Language Interoperability
04:00
+ [Hands-On] CRUD API with MongoDB
17 lectures 01:28:47
Install MongoDB
03:16
Install MongoDB - Windows Instructions
00:06
Install MongoDB UI - Robo 3T
01:10
Blog Service Golang Setup
09:03
MongoDB Driver Golang Setup
08:32
Code Changes
00:14
CreateBlog Server
09:58
CreateBlog Client
05:43
ReadBlog Server
11:20
ReadBlog Client
06:33
UpdateBlog Server
08:18
UpdateBlog Client
03:49
DeleteBlog Server
04:25
DeleteBlog Client
02:13
ListBlog Server
07:19
ListBlog Client
02:26
Evans CLI test with CRUD
04:22