Posts in 2018
gRPC on HTTP/2 Engineering a Robust, High-performance Protocol
Monday, August 20, 2018 in Blog
In a previous article, we explored how HTTP/2 dramatically increases network efficiency and enables real-time communication by providing a framework for long-lived connections. In this article, we’ll look at how gRPC builds on HTTP/2’s long-lived …
gRPC + JSON
Wednesday, August 15, 2018 in Blog
So you’ve bought into this whole RPC thing and want to try it out, but aren’t quite sure about Protocol Buffers. Your existing code encodes your own objects, or perhaps you have code that needs a particular encoding. What to do? …
Take the gRPC Survey!
Tuesday, August 14, 2018 in Blog
The gRPC Project wants your feedback! The gRPC project is looking for feedback to improve the gRPC experience. To do this, we are running a gRPC user survey. We invite you to participate and provide input that will help us better plan and prioritize. …
gRPC Meets .NET SDK And Visual Studio: Automatic Codegen On Build
Tuesday, June 26, 2018 in Blog
As part of Microsoft’s move towards its cross-platform .NET offering, they have greatly simplified the project file format, and allowed a tight integration of third-party code generators with .NET projects. We are listening, and now proud to …
Gracefully clean up in gRPC JUnit tests
Tuesday, June 26, 2018 in Blog
It is best practice to always clean up gRPC resources such as client channels, servers, and previously attached Contexts whenever they are no longer needed. This is even true for JUnit tests, because otherwise leaked resources may not only linger in …
gRPC ❤ Kotlin
Tuesday, June 19, 2018 in Blog
Did you know that gRPC Java now has out of box support for Kotlin projects built with Gradle? Kotlin is a modern, statically typed language developed by JetBrains that targets the JVM and Android. It is generally easy for Kotlin programs to …
So You Want to Optimize gRPC - Part 2
Monday, April 16, 2018 in Blog
How fast is gRPC? Pretty fast if you understand how modern clients and servers are built. In part 1, I showed how to get an easy 60% improvement. In this post I show how to get a 10000% improvement. Setup As in part 1, we will start with an existing, …
So You Want to Optimize gRPC - Part 1
Tuesday, March 06, 2018 in Blog
A common question with gRPC is how to make it fast. The gRPC library offers users access to high performance RPCs, but it isn’t always clear how to achieve this. Because this question is common enough I thought I would try to show my thought …
gRPC and Deadlines
Monday, February 26, 2018 in Blog
TL;DR: Always set a deadline. This post explains why we recommend being deliberate about setting deadlines, with useful code snippets to show you how. When you use gRPC, the gRPC library takes care of communication, marshalling, unmarshalling, and …
gRPC-Go Engineering Practices
Monday, January 22, 2018 in Blog
It’s the start of the new year, and almost the end of my first full year on the gRPC-Go project, so I’d like to take this opportunity to provide an update on the state of gRPC-Go development and give some visibility into how we manage the …