gRPC [Node.js] MasterClass: Build Modern API & Microservices

gRPC [Node.js] MasterClass: Build Modern API & Microservices

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 6 Hours | 2.36 GB

Better than REST API! Build a Javascript HTTP/2 API for a NodeJS micro service with gRPC, Protocol Buffers (protobuf)

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 NodeJS. 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 Node.JS Master Class is the best way to get a great overview of all the possibilities offered by gRPC with your favorite 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 JavaScript 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 NodeJS.

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

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 NodeJS 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
Table of Contents

gRPC Course Overview
1 gRPC Introduction
2 Course Objective
3 About your instructor
4 Important Message

Code Download
5 Code Download

[Theory] gRPC Internals Deep Dive
6 Why this section
7 Protocol Buffers Language Interoperability
8 HTTP2
9 Types of gRPC APIs
10 Scalability in gRPC
11 Security in gRPC (SSL)
12 gRPC vs REST
13 Section Summary – why use gRPC

[Hands-On] gRPC Project Overview Setup
14 Install Node.js and VS Code IDE
15 Command to Generate code in Protocol Buffers
16 Setup gRPC Node.js Project – Create Service and Code Generation
17 Server Setup and Running It
18 Client Setup – Boilerplate Code

[Hands-On] gRPC Unary
19 Whats an Unary API
20 Greet API Definition
21 Unary API Server Implementation
22 Unary API Client Implementation
23 Side Note – Install nodemon
24 [Exercise] Sum API
25 [Solution] Sum API

[OPTIONAL] Statically Dynamically Code Generation
26 Statically or Dynamically Code Generation gRPC Node.JS
27 Dynamically Code Generation Implementation

[Hands-On] gRPC Server Streaming
28 Whats a Server Streaming API
29 GreetManyTimes API Definition
30 Server Streaming API Server Implementation
31 Server Streaming API Client Implementation
32 [Exercise] PrimeNumberDecomposition API
33 [Solution] PrimeNumberDecomposition API

[Hands-On] gRPC Client Streaming
34 Whats a Client Streaming API
35 LongGreet API Definition
36 Client Streaming API Server Implementation
37 Client Streaming API Client Implementation
38 Client Streaming API Client Implementation – Part 2
39 [Exercise] ComputeAverage API
40 [Solution] ComputeAverage API

[Hands-On] gRPC Bi-Directional Streaming
41 Whats a Bi-Directional Streaming API
42 GreetEveryone API Definition
43 Bi-Directional Streaming API Server Implementation
44 Bi-Directional Streaming API Client Implementation
45 [Exercise] FindMaximum API
46 [Solution] FindMaximum API

[Hands-On] gRPC Advanced Features Deep Dive
47 [Theory] Errors in gRPC
48 [Hands-On] Errors implementation
49 [Theory] Deadlines
50 [Hands-On] Deadlines
51 [Theory] SSL Security
52 Helpful gRPC SSL Node JS Resources
53 [Hands-On] SSL Security
54 [Demo] Language Interoperability

[Hands-On] CRUD API with Postgres
55 Install Postgres
56 Install Postico Setup DB Connection
57 Setup Postgres Modules and Adding Data to DB
58 Creating Blog Protos and Code Generation
59 ListBlog Server
60 ListBlog Client
61 CreateBlog Server
62 CreateBlog Client
63 ReadBlog Server
64 ReadBlog Client
65 UpdateBlog Server
66 UpdateBlog Client
67 DeleteBlog Server
68 DeleteBlog Client
69 gRPC Reflection Evans CLI

Next Steps
70 gRPC Services in the Real Word
71 Congrats Next Steps
72 THANK YOU
73 Bonus Lecture Special discounts for our other courses