Posted by Dan Ciruli, Product Manager, Google Cloud Platform
Today we’re announcing the open beta release of the newest set of features and open source components in Google Cloud Endpoints, a distributed API management suite that lets you deploy, protect, monitor and manage APIs written in any language and running on Google Cloud Platform (GCP). We’re also releasing new versions of the Cloud Endpoints Frameworks for Java and Python that reduce latency, support custom domains and feature improved debugging.
One of the challenges we faced was building an API platform at Google with sufficient performance to handle the surge in microservices in addition to the scale of our web APIs. That led us to develop a server-side proxy that performs traditional API management functions itself. This avoids an additional network hop and in our testing delivers sub-millisecond latency — compared to tens to hundreds of milliseconds with traditional standalone proxies.
And now, we’re releasing that architecture to you. The Extensible Service Proxy (ESP) is a NGINX-based proxy designed to run in the server-local architecture. Designed to be deployed in a containerized environment or on its own, ESP integrates with Google Service Control to provide ultra-low latency monitoring, authorization checks, API key validation and many of the other features that Google uses to manage its own APIs.
We’re also announcing support for the OpenAPI Specification. We’re a founding member of the Open API Initiative (OAI), and recognize the value of standardizing how REST APIs are described. Organizations that adopt the OpenAPI Specification benefit from OAI tooling, while developing their applications in the language and framework of their choice.
Google Cloud Endpoints features
The beta release of Google Cloud Endpoints includes the breadth of API management functionality that you need to manage your own APIs, whether they’re accessed from mobile apps, web apps or other services. Today, Cloud Endpoints allows users to monitor the status of critical APIs with usage, error and consumption charts. It logs API calls to Google Cloud Logging and trace information to Google Cloud Trace, and enables powerful analytics by integrating with Google BigQuery. Cloud Endpoints supports end-user authentication through built-in Google authentication and integrations to Auth0 and Firebase Authentication, and creates and validates API Keys to track usage by client.
|(click to enlarge)|
Cloud Endpoints is designed to allow developers to easily choose the language and framework they want for their backend. Based on the Open API Specification (formerly known as Swagger), Cloud Endpoints supports backends running on Google App Engine Standard or Flexible Environment, Google Compute Engine or Google Container Engine. In App Engine Standard or Flexible Environments, you can transparently add in proxy functionality with a one-line config change, or deploy a containerized version of the proxy on Kubernetes and Container Engine.
GCP customers are already super-charging their development with Cloud Endpoints. “Cloud Endpoints have allowed us to build and ship our APIs faster and more consistently than ever before,” said Braden Bassingthwaite, technical lead at Vendasta. “Not having to worry about authentication, performance and status monitoring has reduced the time and effort we need to build great APIs at Vendasta.”
Endpoints Framework for Java and Python
In addition to the new API management features, we’re also announcing new versions of the Google Cloud Endpoints API frameworks for Java and Python that run on App Engine Standard Environment. The new versions of those frameworks feature reduced latency, an improved developer experience and support for custom domains. In addition, these new frameworks allow you to opt into the new API management features. To read more about the Endpoints Frameworks, check out the Java and Python documentation.
Try it out
During the initial part of our beta period, the API management features in Cloud Endpoints will be offered at no charge. We will announce final pricing during the beta period.
APIs are an area of focus and investment for GCP. Be on the lookout for upcoming releases from the Endpoints team with support for more use cases and additional functionality, including integration with Identity and Access Management, rate limits and quotas, developer portals and more. Read the documentation to get the know the details. Try our walkthroughs for App Engine (Standard or Flexible Environment, Container Engine or Compute Engine) and join our Google Cloud Endpoints Google Group to send us your feedback.