Stop Thinking, Just Do!

Sungsoo Kim's Blog

A Modern Toolkit for Microservice Communication

tagsTags

17 March 2018


Article Source


Intro to gRPC: A Modern Toolkit for Microservice Communication

Abstract

gRPC is a modern, open source, high performance RPC framework that can run in any environment. It efficiently connects services in and across data centers with pluggable support for load balancing, tracing, health-checking, and authentication. This session is an introduction to gRPC that will give you the tools to start building successful apps on top of it. You’ll learn how it works, what it’s capable of, and lessons from deploying it into production systems.

gRPC and Go: Developing Efficient and Type-Safe Services

While REST, JSON over HTTP 1.1, is ubiquitous, it is a simple text-based protocol that was not designed to handle the demands of modern cloud-native service architectures. The gRPC project, originated from work at Google, is intended to continue where JSON stopped. It is a universal RPC protocol that uses binary payload over HTTP 2.0 for creating efficient, strongly typed, idiomatic and expressive service APIs using the language of your choice (ten so far).

In this session, speaker Vladimir Vivien explores the use of gRPC with the Go programming language. The session starts with the definition of a service using gRPC’s interface definition language (IDL). It continues on to create a working service while demonstrating the different gRPC API styles including uni-directional, bi-directional and streaming. Lastly, the session explores implications such client development, integration with existing JSON environments, and security.

Presentation topics:

  • gRPC overview
  • gRPC and the Go programming language
  • Service definition and code generation
  • Synchronous and asynchronous streaming APIs
  • gRPC services with REST gateways
  • Secure services

comments powered by Disqus