In a recent blog post, Google announced Eventarc, a new events functionality that allows customers to trigger Cloud Run from more than 60 Google Cloud sources. With Eventarc, customers can build event-driven applications and take care of event ingestion, delivery, security, authorization, observability, and error handling.
Google Cloud Run allows customers to run stateless containers in a fully-managed environment. It is built from open-source Knative, letting you choose to run your containers either fully managed with Cloud Run, or in your Google Kubernetes Engine cluster with Cloud Run for Anthos. And with Eventarc, customers can connect Cloud Run services with events from a variety of sources.
According to the Google announcement blog post, customers can use Eventarc to address use cases such as video analysis, file conversion, new user signup, application monitoring, and hundreds of others by acting on events that originate from Cloud Storage, BigQuery, Firestore, and more than 60 other Google Cloud sources. Eventarc supports:
- Receiving events from 60+ Google Cloud sources (via Cloud Audit logs)
- Receiving events from custom sources by publishing to Pub/Sub – customer's code can send events to signal between microservices
- Adhere to the CloudEvents standard for all events, regardless of source, to ensure a consistent developer experience
- On-demand scalability and no minimum fees
The underlying delivery mechanism in Eventarc is Pub/Sub, and topics and subscriptions. Event sources produce events and publish them on the Pub/Sub topic in any format. Subsequently, the events are delivered to the Google Run sinks. Developers can use Eventarc for applications running on Cloud Run to use a Cloud Storage event (via Cloud Audit Logs) to trigger a data processing pipeline or an event from custom sources (publishing to Cloud Pub/Sub) to signal between microservices.
Source: https://codelabs.developers.google.com/codelabs/cloud-run-events#2
With Eventarc, Google joins other public cloud vendors in providing a service on their respective cloud platform to manage events centrally. Microsoft released Event Grid, a service that enables developers to manage events in a unified way in Azure, over two years ago – and continued to evolve the service with advanced filters and event domains. Furthermore, AWS followed in 2019 with Amazon Eventbridge - a serverless event bus that allows AWS services, Software-as-a-Service (SaaS), and custom applications to communicate with each other using events. And lastly, other vendors are also providing an event bus service similar to Event Grid and EventBridge, such as TriggerMesh offering EveryBridge.
Holger Mueller, principal analyst and vice president at Constellation Research Inc., told InfoQ:
Event-driven architectures have been around for a while ... but they were always challenged by having to size the platforms for the events - and that defeats the inherent idea to scale elastically to the event volume. Enter the Cloud that gives precisely that elasticity, and its Google's turn with Eventarc, a key component for Next-Generation Applications.
Eventarc is currently in preview, and Google is working to make it a full-featured event offering for its cloud platform. Furthermore, developers can get started by following the quickstart guide and leverage the CloudEvents SDK along with the Google Events library.