Eventarc memungkinkan Anda membangun arsitektur berbasis peristiwa dan berbasis pesan tanpa harus menerapkan, menyesuaikan, atau memelihara infrastruktur yang mendasarinya.
Eventarc ditawarkan dalam dua edisi: Eventarc Advanced dan Eventarc Standard. Kedua edisi ini menawarkan solusi eventing yang skalabel, serverless, dan terkelola sepenuhnya yang memungkinkan Anda merutekan peristiwa dari sumber ke target secara asinkron. Untuk mengetahui informasi selengkapnya, lihat Memilih Eventarc Advanced atau Eventarc Standard.
Eventarc Advanced dirancang untuk menyederhanakan penyerapan, orkestrasi, dan pengiriman data peristiwa melalui pesan di seluruh aplikasi, layanan, dan endpoint. Eventarc Advanced memungkinkan Anda mengumpulkan peristiwa yang terjadi dalam sistem dan memublikasikannya ke bus pusat. Layanan yang tertarik dapat berlangganan pesan tertentu dengan membuat pendaftaran. Anda dapat menggunakan bus dan pipeline untuk merutekan peristiwa dari beberapa sumber secara real time, memublikasikannya ke beberapa tujuan, dan secara opsional mengubah peristiwa sebelum pengiriman ke target.
Eventarc Advanced sangat ideal untuk organisasi dengan kebutuhan eventing dan pesan yang kompleks, terutama yang berjuang untuk mengelola banyak topik Pub/Sub, antrean Kafka, atau sistem pesan pihak ketiga lainnya. Dengan memberikan visibilitas dan kontrol yang ditingkatkan dan terpusat kepada administrator, Eventarc Advanced memungkinkan organisasi menghubungkan beberapa tim di berbagai project.
Anda dapat mengelola Eventarc Advanced dari Google Cloud konsol, dari command line menggunakan Google Cloud CLI, atau menggunakan Eventarc API.
antara berbagai layanan, aplikasi, dan sistem (klik diagram untuk memperbesar).
Konsep utama
Bus menyediakan endpoint yang dapat ditemukan untuk peristiwa dan merupakan router yang menerima semua peristiwa yang dipublikasikan oleh penyedia dan mengirimkannya ke nol atau lebih tujuan. Bus memungkinkan Anda memusatkan, memantau, dan melacak aliran pesan melalui sistem Anda. Anda dapat menggunakan bus untuk merutekan peristiwa dari banyak sumber ke banyak target.
Pesan yang tiba di bus dievaluasi menurut kriteria pendaftaran yang mewakili langganan untuk peristiwa yang dikumpulkan oleh bus tertentu. Peristiwa dirutekan ke konsumen yang telah berlangganan peristiwa tertentu tersebut. Pendaftaran memungkinkan Anda menggunakan Common Expression Language (CEL) untuk menentukan kebijakan kontrol akses terperinci dengan mencocokkan peristiwa berdasarkan atribut peristiwa. Pendaftaran juga memungkinkan Anda menentukan pipeline tempat peristiwa yang cocok harus dikirim.
Pipeline adalah perantara pengiriman antara bus dan tujuan. Pipeline menentukan tujuan target dan juga memberikan opsi untuk mengubah peristiwa yang cocok sebelum mengirimkannya ke tujuan. Pipeline memungkinkan Anda menangani struktur peristiwa yang berbeda dengan mendukung beberapa format payload dan memungkinkan Anda mengadaptasi data peristiwa dengan cepat tanpa mengubah layanan sumber atau target.
Kemampuan utama
Eventarc Advanced mendukung banyak kasus penggunaan untuk aplikasi tujuan. Beberapa kemampuan utamanya adalah:
Integrasi aplikasi skala besar: Anda dapat menghubungkan banyak layanan dan aplikasi, sehingga memungkinkan komunikasi asinkron di berbagai format dan skema peristiwa.
Streaming peristiwa untuk AI dan analisis: Anda dapat menangani masuknya data dari perangkat IoT dan workload AI, memfilter, mengubah, dan memperkaya peristiwa sebelum memasukkannya ke pipeline analisis Anda.
Deployment hybrid dan multi-cloud: Anda dapat memperluas arsitektur berbasis peristiwa Google Cloud, berintegrasi dengan sistem lokal dan penyedia cloud lainnya. Eventarc Advanced memungkinkan Anda merutekan peristiwa dari berbagai sumber, termasuk sumber Google dan penerbit peristiwa langsung.
Memahami regionalitas
Eventarc Advanced adalah layanan regional sepenuhnya: semua traffic dan data Eventarc Advanced harus berada di region yang sama. Misalnya, pendaftaran dan pipeline hanya dapat membaca dan memproses data dari region yang sama dengan bus. Dukungan lintas region dapat dicapai dengan memublikasikan peristiwa ke bus yang berbeda di region yang berbeda, dan dengan mengonfigurasi jaringan dalam perimeter layanan yang mencakup beberapa region.
Tata letak project
Semua resource Eventarc harus berada dalam satu Google Cloud project. Namun, tidak ada persyaratan agar penyedia (sumber peristiwa), bus (administrator), dan pipeline (target peristiwa) berada dalam project yang sama. Anda juga dapat mengumpulkan dan memublikasikan peristiwa dari sumber Google di beberapa project. Untuk mengetahui informasi selengkapnya, lihat Memublikasikan peristiwa dari beberapa project.
Anda dapat menggunakan kombinasi izin Identity and Access Management (IAM) untuk mengontrol penggunaan resource, akses terperinci ke data menggunakan kebijakan akses dan CEL, serta perimeter layanan untuk mendukung persyaratan jaringan dan keamanan untuk berbagai kebutuhan ingress dan egress.
Peristiwa
Peristiwa adalah catatan data yang menyatakan kejadian dan konteksnya, serta menunjukkan perubahan dalam resource atau lingkungan. Peristiwa adalah unit komunikasi diskrit, terlepas dari peristiwa lainnya. Misalnya, peristiwa dapat menunjukkan perubahan pada data dalam database, file yang ditambahkan ke sistem penyimpanan, atau tugas terjadwal.
Perhatikan bahwa peristiwa juga merupakan pesan yang dikeluarkan oleh komponen saat statusnya telah berubah. Saat peristiwa terjadi, pesan akan dikirim ke infrastruktur eventing tempat konsumen dapat mengambilnya. Dalam konteks arsitektur berbasis peristiwa, kita sering menggunakan istilah peristiwa untuk merujuk ke pesan yang mengomunikasikan peristiwa, bukan ke kejadian itu sendiri (apa yang sebenarnya terjadi untuk menghasilkan pesan).
Jenis peristiwa
Eventarc Advanced mendukung peristiwa yang berasal langsung dari sumber Google.
Untuk mengetahui informasi selengkapnya, lihat Jenis peristiwa Google yang didukung oleh Eventarc.
Penyedia dan tujuan peristiwa
Peristiwa dikumpulkan dari penyedia peristiwa oleh Eventarc Advanced dan dirutekan ke tujuan peristiwa. Setiap pipeline Eventarc Advanced hanya dapat menentukan satu tujuan sebagai target untuk pesan yang dirutekan.
Penyedia yang didukung mencakup penyedia Google dan penerbit peristiwa langsung. Tujuan yang didukung mencakup Cloud Run, Cloud Run Functions, endpoint HTTP yang dihosting di jaringan Virtual Private Cloud, topik Pub/Sub, Workflows, dan bus Eventarc Advanced lainnya.
Untuk mengetahui informasi selengkapnya, lihat Penyedia dan tujuan peristiwa.
Format dan library peristiwa
Eventarc mengirimkan peristiwa, terlepas dari penyedia, ke tujuan target dalam format CloudEvents menggunakan permintaan HTTP dalam mode konten biner. CloudEvents adalah spesifikasi untuk mendeskripsikan metadata peristiwa dengan cara yang umum.
Tujuan target seperti Cloud Run Functions dan Cloud Run menggunakan peristiwa dalam format HTTP. Untuk tujuan Workflows, layanan Workflows mengonversi peristiwa menjadi objek JSON, dan meneruskan peristiwa ke eksekusi alur kerja sebagai argumen runtime.
Menggunakan cara standar untuk mendeskripsikan metadata peristiwa mendukung konsistensi, aksesibilitas, dan portabilitas. Konsumen peristiwa dapat membaca peristiwa ini secara langsung, atau Anda dapat menggunakan Cloud Client Libraries dalam berbagai bahasa (termasuk C++, C#, Go, Java, Node.js, PHP, Python, dan Ruby) untuk membaca dan mengurai peristiwa. Ada juga sekumpulan CloudEvents SDK khusus bahasa .
Struktur isi HTTP untuk semua peristiwa tersedia di repositori GitHub Google CloudEvents.
Keandalan dan pengiriman
Tidak ada jaminan pengiriman FIFO (first-in-first-out) yang berurutan. Perhatikan bahwa pengurutan yang ketat akan merusak fitur ketersediaan dan skalabilitas Eventarc yang sesuai dengan fitur lapisan transportnya, Pub/Sub. Untuk mengetahui informasi selengkapnya, lihat Mengurutkan pesan.
Latensi dan throughput adalah upaya terbaik. Jumlah tersebut bervariasi berdasarkan beberapa faktor, termasuk apakah traffic publikasi atau egress melibatkan region yang berbeda; konfigurasi layanan tertentu; dan beban jaringan pada resource di Google Cloud region.
Perhatikan bahwa ada kuota dan batas penggunaan yang berlaku secara umum untuk Eventarc.
Kebijakan percobaan ulang peristiwa
Durasi retensi pesan default yang ditetapkan oleh Eventarc Advanced adalah 24 jam dengan penundaan backoff eksponensial.
Eventarc Advanced menggunakan penundaan backoff eksponensial untuk menangani error yang dapat dicoba ulang. Penundaan ini dimulai dengan penundaan satu detik dan penundaan akan digandakan setelah setiap percobaan yang gagal (hingga maksimum 60 detik dan 5 percobaan).
Untuk mengetahui informasi selengkapnya, lihat Mencoba ulang peristiwa.
Peristiwa duplikat
Peristiwa duplikat mungkin dikirim ke pengendali peristiwa. Menurut
spesifikasi CloudEvents,
kombinasi atribut source dan id dianggap unik, dan
oleh karena itu, peristiwa apa pun dengan kombinasi yang sama dianggap duplikat.
Anda harus menerapkan
pengendali peristiwa idempoten
sebagai praktik terbaik umum.
Kemampuan observasi
Google Cloud Observability menyediakan alat pemantauan, logging, dan diagnostik. Alat ini dapat membantu Anda memantau dan menganalisis aktivitas dan pertumbuhan Eventarc, serta memahami perilaku, kondisi, dan performa aplikasi Anda. Untuk mengetahui informasi selengkapnya, lihat Kemampuan observasi di Eventarc.
Log mendetail untuk Eventarc, Cloud Run, Cloud Run Functions, Pub/Sub, dan Workflows tersedia dari Cloud Audit Logs.
Standar kepatuhan
Eventarc mematuhi sertifikasi dan standar ini .