Bagikan melalui


Apa itu Azure Event Grid?

Azure Event Grid adalah layanan distribusi pesan Sub pesan Pub yang sangat dapat diskalakan dan dikelola sepenuhnya yang menawarkan pola konsumsi pesan fleksibel menggunakan protokol MQTT dan HTTP. Dengan Azure Event Grid, Anda dapat membangun alur data dengan data perangkat, mengintegrasikan aplikasi, dan membangun arsitektur tanpa server berbasis peristiwa.

Event Grid memungkinkan klien untuk menerbitkan dan berlangganan pesan melalui protokol MQTT v3.1.1 dan v5.0 untuk mendukung solusi Internet of Things (IoT). Melalui HTTP, Event Grid memungkinkan Anda membangun solusi berbasis peristiwa di mana layanan penerbit mengumumkan perubahan status sistem (peristiwa) ke aplikasi pelanggan. Event Grid dapat dikonfigurasi untuk mengirim peristiwa kepada pelanggan (pengiriman push) atau pelanggan dapat terhubung ke Event Grid untuk membaca peristiwa (menarik pengiriman). Event Grid mendukung spesifikasi CloudEvents 1.0 untuk memberikan interoperabilitas di seluruh sistem.

Diagram Event Grid tingkat tinggi yang menunjukkan penerbit dan pelanggan menggunakan protokol MQTT dan HTTP.

Fitur inti

Berikut adalah dua fitur utama Azure Event Grid:

Pesan MQTT. Perangkat dan aplikasi IoT dapat berkomunikasi satu sama lain melalui MQTT. Event Grid juga dapat digunakan untuk merutekan pesan MQTT ke layanan Azure atau titik akhir kustom untuk analisis data, visualisasi, atau penyimpanan lebih lanjut. Integrasi dengan layanan Azure ini memungkinkan Anda membangun alur data yang dimulai dengan penyerapan data dari perangkat IoT Anda.

Distribusi data menggunakan mode pengiriman push dan pull. Kapan saja dalam alur data, aplikasi HTTP dapat menggunakan pesan menggunakan API pendorongan atau penarikan. Sumber data mungkin menyertakan data klien MQTT, tetapi juga menyertakan sumber data berikut yang mengirim peristiwa mereka melalui HTTP:

  • Layanan Azure
  • Aplikasi kustom Anda
  • Sistem mitra eksternal (SaaS)

Mekanisme pengiriman push Event Grid mengirim data ke tujuan yang menyertakan webhook aplikasi Anda sendiri dan layanan Azure. Mari kita lihat dua fitur ini secara rinci:

Pesan MQTT

Event Grid memungkinkan klien Anda berkomunikasi pada nama topik MQTT kustom menggunakan model olahpesan terbitkan-berlangganan. Event Grid mendukung klien yang menerbitkan dan berlangganan pesan melalui MQTT v3.1.1, MQTT v3.1.1 melalui WebSockets, MQTT v5, dan MQTT v5 melalui WebSockets. Event Grid memungkinkan Anda mengirim pesan MQTT ke cloud untuk analisis data, penyimpanan, dan visualisasi, di antara kasus penggunaan lainnya.

Event Grid terintegrasi dengan Azure IoT Operations untuk menjenjang kemampuan broker MQTT-nya di tepi dengan kemampuan broker MQTT Event Grid di cloud. Broker Azure IoT MQTT adalah broker MQTT terdistribusi baru untuk komputasi tepi, yang berjalan pada kluster Kubernetes dengan dukungan Arc. Sekarang tersedia dalam pratinjau publik sebagai bagian dari Operasi Azure IoT.

Fitur broker MQTT di Azure Event Grid sangat ideal untuk implementasi skenario otomotif dan mobilitas, antara lain. Lihat arsitektur referensi untuk mempelajari cara membangun solusi yang aman dan dapat diskalakan untuk menghubungkan jutaan kendaraan ke cloud, menggunakan layanan olahpesan dan analitik data Azure.

Diagram Event Grid tingkat tinggi yang menunjukkan komunikasi MQTT dua arah dengan klien penerbit dan pelanggan.

Berikut adalah beberapa sorotan dukungan olahpesan MQTT di Azure Event Grid:

  • Dukungan MQTT v3.1.1 dan MQTT v5.0 – Gunakan pustaka klien MQTT sumber terbuka untuk berkomunikasi dengan layanan.
  • Topik kustom dengan dukungan wildcard - Gunakan struktur topik Anda sendiri.
  • Model olahpesan terbitkan-berlangganan - Berkomunikasi secara efisien menggunakan pola olahpesan satu-ke-banyak, banyak-ke-satu, dan satu-ke-satu.
  • Integrasi cloud bawaan - Rutekan pesan MQTT Anda ke layanan Azure atau webhook kustom untuk diproses lebih lanjut.
  • Model kontrol akses yang fleksibel dan terperinci - Klien grup dan topik untuk menyederhanakan manajemen kontrol akses, dan menggunakan dukungan variabel dalam templat topik untuk kontrol akses terperinci.
  • Metode autentikasi broker MQTT - Autentikasi sertifikat X.509 adalah standar autentikasi industri di perangkat IoT, Microsoft Entra IDauthentication adalah standar autentikasi Azure untuk aplikasi dan autentikasi OAuth 2.0 (JSON Web Token) menyediakan opsi yang ringan, aman, dan fleksibel untuk klien MQTT yang tidak disediakan di Azure.
  • Dukungan Transport Layer Security (TLS) 1.2 dan TLS 1.3 - Amankan komunikasi klien Anda menggunakan protokol enkripsi yang kuat.
  • Dukungan multi-sesi - Hubungkan aplikasi Anda dengan beberapa sesi aktif untuk memastikan keandalan dan skalabilitas.
  • MQTT melalui WebSockets - Aktifkan konektivitas untuk klien di lingkungan yang dibatasi firewall.
  • Nama domain kustom - Memungkinkan pengguna untuk menetapkan nama domain mereka sendiri ke titik akhir MQTT namespace Event Grid, meningkatkan keamanan dan menyederhanakan konfigurasi klien.
  • Peristiwa Siklus Hidup Klien - Memungkinkan aplikasi untuk bereaksi terhadap peristiwa tentang status koneksi klien atau operasi sumber daya klien.

Untuk informasi selengkapnya tentang broker MQTT, lihat artikel berikut ini:

Pesan peristiwa (HTTP)

Event Grid mendukung pengiriman peristiwa pendorongan dan penarikan menggunakan HTTP. Dengan pengiriman push, Anda menentukan tujuan dalam langganan peristiwa, tempat Event Grid mengirim peristiwa. Dengan pengiriman pull, aplikasi pelanggan terhubung ke Event Grid untuk mengonsumsi peristiwa. Pengiriman penarikan didukung untuk topik di namespace Layanan Event Grid.

Diagram tingkat tinggi memperlihatkan pengiriman push dan pengiriman tarik dengan jenis sumber daya yang terlibat.

Penangan kejadian

Dalam pengiriman push, langganan peristiwa adalah sumber daya konfigurasi generik yang memungkinkan Anda menentukan penanganan aktivitas atau tujuan tempat peristiwa dikirim menggunakan pengiriman push. Misalnya, Anda dapat mengirim data ke Webhook, Azure Function, atau Event Hubs. Untuk daftar lengkap penanganan aktivitas yang didukung, lihat:

  • Penanganan aktivitas didukung pada topik namespace layanan.
  • Penanganan aktivitas didukung pada topik kustom, sistem, domain, dan mitra.

Pengiriman push vs. pengiriman penarikan

Berikut ini adalah panduan umum untuk membantu Anda memutuskan kapan harus menggunakan pengiriman pull atau push.

Pengiriman penarikan

  • Anda memerlukan kontrol penuh kapan harus menerima peristiwa. Misalnya, aplikasi Anda mungkin tidak aktif sepanjang waktu, tidak cukup stabil, atau Anda memproses data pada waktu tertentu.
  • Anda memerlukan kontrol penuh atas konsumsi peristiwa. Misalnya, layanan atau lapisan hilir di aplikasi konsumen Anda memiliki masalah yang mencegah Anda memproses peristiwa. Dalam hal ini, API pengiriman penarikan memungkinkan aplikasi konsumen untuk merilis peristiwa yang sudah dibaca kembali ke broker sehingga dapat dikirimkan nanti.
  • Anda ingin menggunakan tautan privat saat menerima peristiwa, yang hanya dimungkinkan dengan pengiriman pull, bukan pengiriman push.
  • Anda tidak memiliki kemampuan untuk mengekspos titik akhir dan menggunakan pengiriman push, tetapi Anda dapat terhubung ke Event Grid untuk menggunakan peristiwa.

Pengiriman push

  • Anda ingin menghindari polling konstan untuk menentukan bahwa terjadi perubahan status sistem. Anda lebih suka menggunakan Event Grid untuk mengirim peristiwa kepada Anda pada saat perubahan status terjadi.
  • Anda memiliki aplikasi yang tidak dapat melakukan panggilan keluar. Misalnya, organisasi Anda mungkin khawatir tentang penyelundupan data. Namun, aplikasi Anda dapat menerima peristiwa melalui titik akhir publik.

Berikut adalah beberapa sorotan dari model HTTP:

  • Model konsumsi peristiwa yang fleksibel – saat menggunakan HTTP, gunakan peristiwa menggunakan mode tarik atau dorong pengiriman.
  • Peristiwa sistem – Memulai dan menjalankan dengan cepat dengan peristiwa layanan Azure bawaan.
  • Peristiwa aplikasi Anda sendiri - Gunakan Event Grid untuk merutekan, memfilter, dan mengirimkan peristiwa kustom dengan andal dari aplikasi Anda.
  • Peristiwa mitra – Berlangganan peristiwa penyedia SaaS mitra Anda dan proses di Azure.
  • Pemfilteran tingkat lanjut – Filter pada jenis peristiwa atau atribut peristiwa lainnya untuk memastikan penanganan aktivitas atau aplikasi konsumen Anda hanya menerima peristiwa yang relevan.
  • Keandalan – Fitur pengiriman push memiliki mekanisme coba lagi 24 jam dengan backoff eksponensial untuk memastikan peristiwa dikirimkan. Jika Anda menggunakan pengiriman penarikan, aplikasi Anda memiliki kontrol penuh atas konsumsi peristiwa.
  • Throughput tinggi - Bangun solusi terintegrasi volume tinggi dengan Event Grid.
  • Nama domain kustom - Memungkinkan pengguna untuk menetapkan nama domain mereka sendiri ke titik akhir HTTP namespace Event Grid, meningkatkan keamanan dan menyederhanakan konfigurasi klien.

Untuk informasi lebih lanjut, baca artikel berikut:

Kasus penggunaan

Untuk daftar kasus penggunaan di mana Anda dapat menggunakan Azure Event Grid, lihat Kasus penggunaan

Wilayah yang didukung

Berikut adalah daftar wilayah tempat fitur topik broker dan namespace layanan MQTT baru tersedia:

Wilayah Wilayah Wilayah Wilayah
Australia Timur Australia Tenggara Australia Tengah Australia Tengah 2
Brasil Selatan Brasil Tenggara Kanada Tengah Kanada Timur
India Tengah US Tengah Asia Timur AS Timur
AS Timur 2 AS Barat Prancis Tengah Prancis Selatan
Jerman Utara Jerman Barat Tengah Israel Tengah Italia Utara
Jepang Timur Jepang Barat Korea Tengah Korea Selatan
Meksiko Tengah US Tengah Utara Eropa Utara Norwegia Timur
Polandia Tengah Afrika Selatan Barat Afrika Selatan Utara US Tengah Selatan
India Selatan Asia Tenggara Spanyol Tengah Swedia Tengah
Swedia Selatan Swiss Utara Swiss Barat Arab Saudi Utara
UAE Tengah UK Selatan UK Barat Eropa Barat
US Barat 2 AS Barat 3 AS Tengah Bagian Barat