gRPC: Up and Running: Building Cloud Native Applications with Go and Java for Docker and Kubernetes

gRPC: Up and Running: Building Cloud Native Applications with Go and Java for Docker and Kubernetes

With the advent of cloud native and microservices architecture, applications today often connect over networks using inter-process communication technologies. gRPC is one of the most popular and efficient examples of this, but until now, no single resource has been available to help you build a gRPC application. this practical book shows architects and developers how to overcome various challenges when building these applications and provides a comprehensive understanding of how gRPC works under the hood.

Authors Kasun Indrasiri and Danesh Kuruppu explain how gRPC differs from conventional inter-process communication technologies. Once you understand the foundations and real-world gRPC communication patterns, you’ll learn how to build gRPC applications using Go and Java, run gRPC applications in production, and understand how gRPC works with the Kubernetes ecosytem.

Get a comprehensive understanding of gRPC fundamentals through real-world examples. With this practical guide, you’ll learn how this high-performance interprocess communication protocol is capable of connecting polyglot services in microservices architecture, while providing a rich framework for defining service contracts and data types.

Complete with hands-on examples written in Go, Java, Node, and Python, this book also covers the essential techniques and best practices to use gRPC in production systems. Authors Kasun Indrasiri and Danesh Kuruppu discuss the importance of gRPC in the context of microservices development.

From the Preface

Nowadays software applications are often connected with each other over computer networks using inter-process communication technologies. gRPC is a modern inter-process communication style based on high-performance RPCs (remote procedure calls) for building distributed applications and microservices. With the advent of microservices and cloud native applications, the adoption of gRPC is exponentially growing.

Why Did We Write This Book?

With the increasing adoption of gRPC, we felt that developers need a comprehensive book on gRPC, a book that you can use as the ultimate reference guide in every stage of the development cycle of your gRPC applications. There are a lot of resources and code samples for gRPC all over the place (documentation, blogs, articles, conference talks, and so on), but there’s no single resource that you can use to build gRPC applications. Also, there aren’t any resources on the internals of the gRPC protocol and how it works under the hood.

We wrote this book to overcome those challenges and give you a comprehensive understanding of the fundamentals of gRPC, how it differs from conventional inter-process communication technologies, real-world gRPC communication patterns, how to build gRPC applications using Go and Java, how it works under the hood, how to run gRPC applications in production, and how gRPC works with Kubernetes and the rest of the ecosystem.

Who Is This Book For?

The book is most directly relevant to developers who are building distributed applications and microservices using different inter-process communication technologies. When it comes to building such applications and services, developers need to learn the fundamentals of gRPC, when and how to use it for inter-service communication, best practices for running gRPC services in production, and so on.

Also, architects who are adopting microservices or cloud native architecture and designing how the services should communicate will get a lot of insight from the book because it compares and contrasts gRPC with other technologies and provides guidelines on when to use and when to avoid it.

We assume that both developers and architects have a basic understanding of the fundamentals of distributed computing such as inter-process communication techniques, service-oriented architecture (SOA), and microservices.

More about the authors

Danesh Kuruppu, Danesh Kuruppu is an Associate Technical Lead at WSO2 and with over five years of experience in Enterprise Integration and Microservices technologies. Danesh is the main designer and developer of adding gRPC support for the open source, cloud native programming language, Ballerina. He is part of the gRPC community and a key contributor to the WSO2 Microservices Framework for Java and WSO2 Governance Registry.

Kasun Indrasiri, Kasun Indrasiri is an author and an evangelist of Microservices and Enterprise Integration Architecture with over ten years of experience in building distributed systems. He is the director of Integration Architecture at WSO2 and the product manager of the WSO2 Enterprise Integrator. He has authored Microservices for Enterprise (Apress, 2018) and Beginning WSO2 ESB (Apress, 2017) books and has spoken at several conferences including O’Reilly Software Architecture Conference 2019 in San Jose, GOTO Con 2019 in Chicago, and WSO2 Conferences in San Francisco, London, and Barcelona. Kasun lives in San Jose, California and has founded the “Silicon Valley Microservices, APIs and Integration” Meetup, which is one of the largest microservices meetups in the San Francisco Bay area.

All content is for demonstration purposes, we do not store files, please purchase the printed version of the magazine after reading.

There are many ads here. Please keep in mind that is 100% free. Ads are keeping this site alive. If you use, please make an exception and disable any ads blocking system.

Extraction code:(w18e)