Fueling innovative software
July 15-18, 2019
Portland, OR

Real-time streaming APIs: From data center to internet clients

Wenbo Zhu (Google)
4:15pm4:55pm Wednesday, July 17, 2019
Secondary topics:  Data Driven

Who is this presentation for?

  • API developers, architects, and software engineers




When designing APIs such as the new GCP Firestore real-time database and Google Assistant, Google often focuses on the semantics of the underlying service and tries to avoid introducing any messaging-layer semantics such as failure recovery and resumption support.

Wenbo Zhu dives deep into the lessons learned deploying a public cloud API designed for data center clients that will be consumed by a variety of internet clients. It’s important to decide how to make those design trade-offs and avoid the need to support two different sets of APIs, which would be difficult to maintain. The solution often comes down to a rich client library to minimize the overhead or complexity, which would otherwise be forced to data center clients.

Prerequisite knowledge

  • General knowledge of API design, messaging semantics such as pub/sub, and internet and microservice protocols such as HTTP, gRPC, and WebSockets

What you'll learn

  • Discover lessons and insights on how to design real-time streaming APIs that may be consumed by both datacenter applications and internet-facing applications
Photo of Wenbo Zhu

Wenbo Zhu


Wenbo Zhu is a software engineer at Google, where he is responsible for Google’s frontend networking frameworks. His current work involves building scalable and robust real-time messaging stacks for internet clients to interact with cloud services. He has also contributed to various web protocol-related standards and open source projects. Wenbo holds a PhD in computer engineering. He is the author of the so-called COLOR algorithm for managing performance and consistency trade-offs of geographically replicated cloud services.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)