Azure Event Grid nedir?
Azure Event Grid, MQTT ve HTTP protokollerini kullanarak esnek ileti tüketimi desenleri sunan, yüksek oranda ölçeklenebilir, tam olarak yönetilen bir Pub Alt ileti dağıtım hizmetidir. Azure Event Grid ile cihaz verileriyle veri işlem hatları oluşturabilir, uygulamaları tümleştirebilir ve olay odaklı sunucusuz mimariler oluşturabilirsiniz.
Event Grid, istemcilerin Nesnelerin İnterneti (IoT) çözümlerini desteklemek için MQTT v3.1.1 ve v5.0 protokolleri üzerinden iletileri yayımlamasına ve abone olmasını sağlar. Event Grid, HTTP aracılığıyla, yayımcı hizmetinin sistem durumu değişikliklerini (olayları) abone uygulamalarına duyurduğu olay temelli çözümler oluşturmanıza olanak tanır. Event Grid, olayları abonelere gönderecek şekilde yapılandırılabilir (anında iletme teslimi) veya aboneler olayları okumak için Event Grid'e bağlanabilir (çekme teslimi). Event Grid, sistemler arasında birlikte çalışabilirlik sağlamak için CloudEvents 1.0 belirtimlerini destekler.
Temel özellikler
Azure Event Grid'in iki ana özelliği şunlardır:
MQTT mesajlaşması. IoT cihazları ve uygulamaları MQTT üzerinden birbirleriyle iletişim kurabilir. Event Grid, daha fazla veri analizi, görselleştirme veya depolama için MQTT iletilerini Azure hizmetlerine veya özel uç noktalara yönlendirmek için de kullanılabilir. Azure hizmetleriyle bu tümleştirme, IoT cihazlarınızdan veri alımıyla başlayan veri işlem hatları oluşturmanıza olanak tanır.
Gönderme ve çekme teslim modlarını kullanarak veri dağıtımı. Veri işlem hattının herhangi bir noktasında HTTP uygulamaları, gönderme veya çekme API'lerini kullanarak iletileri kullanabilir. Verilerin kaynağı MQTT istemcilerinin verilerini içerebilir, ancak olaylarını HTTP üzerinden gönderen aşağıdaki veri kaynaklarını da içerir:
- Azure hizmetleri
- Özel uygulamalarınız
- Dış iş ortağı (SaaS) sistemleri
Event Grid'in anında iletme teslim mekanizması, kendi uygulama web kancalarınızı ve Azure hizmetlerinizi içeren hedeflere veri gönderir. Şimdi bu iki özelliğe ayrıntılı olarak göz atalım:
MQTT mesajlaşması
Event Grid, istemcilerinizin bir yayımlama-abone olma mesajlaşma modeli kullanarak özel MQTT konu adlarında iletişim kurmasını sağlar. Event Grid, WebSockets üzerinden MQTT v3.1.1, MQTT v3.1.1 ve WebSockets üzerinden MQTT v5 ve MQTT v5 üzerinden ileti yayımlayan ve iletilere abone olan istemcileri destekler. Event Grid, diğer kullanım örnekleriyle birlikte veri analizi, depolama ve görselleştirmeler için buluta MQTT iletileri göndermenizi sağlar.
Event Grid, Azure IoT İşlemleri ile tümleştirerek uçtaki MQTT aracı özelliğini Event Grid'in buluttaki MQTT aracı özelliğiyle birleştirir. Azure IoT MQTT aracısı, Arc özellikli Kubernetes kümelerinde çalışan uç bilgi işlem için yeni bir dağıtılmış MQTT aracısıdır. Azure IoT İşlemleri kapsamında genel önizleme sürümünde kullanıma sunuldu.
Azure Event Grid'deki MQTT aracı özelliği, diğerleriyle birlikte otomotiv ve mobilite senaryolarının uygulanması için idealdir. Azure'ın mesajlaşma ve veri analizi hizmetlerini kullanarak milyonlarca aracı buluta bağlamak için güvenli ve ölçeklenebilir çözümler oluşturmayı öğrenmek için başvuru mimarisine bakın.
Azure Event Grid'de MQTT mesajlaşma desteğinin bazı önemli noktaları şunlardır:
- MQTT v3.1.1 ve MQTT v5.0 desteği – Hizmetle iletişim kurmak için herhangi bir açık kaynak MQTT istemci kitaplığı kullanın.
- Joker karakter desteğine sahip özel konular - Kendi konu yapınızı kullanın.
- Yayımlama-abone olma mesajlaşma modeli - Bire çok, çoka bir ve bire bir mesajlaşma desenlerini kullanarak verimli bir şekilde iletişim kurun.
- Yerleşik bulut tümleştirmesi - Daha fazla işlem için MQTT iletilerinizi Azure hizmetlerine veya özel web kancalarına yönlendirin.
- Esnek ve ayrıntılı erişim denetimi modeli - Erişim denetimi yönetimini basitleştirmek için istemcileri ve konuyu gruplandırın ve ayrıntılı erişim denetimi için konu şablonlarındaki değişken desteğini kullanın.
- MQTT aracısı kimlik doğrulama yöntemleri - X.509 sertifika kimlik doğrulaması IoT cihazlarında endüstri kimlik doğrulaması standardıdır; Microsoft Entra IDauthentication , Azure'ın uygulamalar için kimlik doğrulama standardıdır ve OAuth 2.0 (JSON Web Belirteci) kimlik doğrulaması , Azure'da sağlanmayan MQTT istemcileri için basit, güvenli ve esnek bir seçenek sağlar.
- Aktarım Katmanı Güvenliği (TLS) 1.2 ve TLS 1.3 desteği - Güçlü şifreleme protokollerini kullanarak istemci iletişiminizin güvenliğini sağlayın.
- Çoklu oturum desteği - Güvenilirlik ve ölçeklenebilirlik sağlamak için uygulamalarınızı birden çok etkin oturuma bağlayın.
- WebSockets üzerinden MQTT - Güvenlik duvarı kısıtlı ortamlarda istemciler için bağlantıyı etkinleştirin.
- Özel etki alanı adları - Kullanıcıların Event Grid ad alanının MQTT uç noktalarına kendi etki alanı adlarını atamasına olanak sağlayarak güvenliği artırır ve istemci yapılandırmasını basitleştirir.
- İstemci Yaşam Döngüsü olayları - Uygulamaların istemci bağlantı durumu veya istemci kaynak işlemleriyle ilgili olaylara tepki vermesine izin verin.
MQTT aracısı hakkında daha fazla bilgi için aşağıdaki makalelere bakın:
- Genel bakış
- MQTT iletilerini yayımlama ve abone olma
- Öğretici: MQTT iletilerini ad alanı konularını kullanarak Azure Event Hubs'a yönlendirme
- Öğretici: Özel konuları kullanarak MQTT iletilerini Azure İşlevleri yönlendirme
Olay iletisi (HTTP)
Event Grid, HTTP kullanarak gönderme ve çekme olayı teslimi destekler. Anında iletme ile olay aboneliğinde Event Grid'in olayları gönderdiği bir hedef tanımlarsınız. Çekme teslimi ile abone uygulamaları olayları kullanmak için Event Grid'e bağlanır. Çekme teslimi, Event Grid ad alanındaki konular için desteklenir.
Olay işleyicileri
Anında iletme tesliminde olay aboneliği, olayların gönderim teslimi kullanılarak gönderildiği olay işleyicisini veya hedefi tanımlamanızı sağlayan genel bir yapılandırma kaynağıdır. Örneğin, web kancasına, Azure İşlevine veya Event Hubs'a veri gönderebilirsiniz. Desteklenen olay işleyicilerinin tam listesi için bkz:
- Ad alanı konularında desteklenen olay işleyicileri .
- Özel, sistem, etki alanı ve iş ortağı konularında desteklenen olay işleyicileri .
Anında iletme ile çekme teslimi karşılaştırması
Çekme veya gönderme teslimini ne zaman kullanacağınıza karar vermenize yardımcı olacak genel yönergeler aşağıdadır.
Çekme teslimi
- Olayları ne zaman alacağınız ile ilgili tam denetime ihtiyacınız vardır. Örneğin, uygulamanız her zaman çalışır durumda olmayabilir, yeterince kararlı olmayabilir veya verileri belirli zamanlarda işleyebilirsiniz.
- Olay tüketimi üzerinde tam denetime sahip olmanız gerekir. Örneğin, tüketici uygulamanızdaki bir aşağı akış hizmeti veya katmanında olayları işlemenizi engelleyen bir sorun vardır. Bu durumda, çekme teslim API'si tüketici uygulamasının daha sonra teslim edilebilmesi için zaten okunan bir olayı aracıya geri göndermesine olanak tanır.
- Olayları alırken özel bağlantılar kullanmak istiyorsunuz. Bu, gönderme teslimiyle değil yalnızca çekme teslimiyle mümkündür.
- Bir uç noktayı kullanıma sunma ve anında iletme teslimini kullanma olanağınız yoktur, ancak olayları kullanmak için Event Grid'e bağlanabilirsiniz.
Anında iletme teslimi
- Sistem durumu değişikliğinin gerçekleştiğini belirlemek için sürekli yoklama yapmaktan kaçınmak istiyorsunuz. Durum değişiklikleri gerçekleştiğinde olayları size göndermek için Event Grid'i kullanmayı tercih edebilirsiniz.
- Giden çağrı yapabilen bir uygulamanız var. Örneğin, kuruluşunuz veri sızdırma konusunda endişeli olabilir. Ancak, uygulamanız olayları genel uç nokta üzerinden alabilir.
HTTP modelinin bazı önemli noktaları şunlardır:
- Esnek olay tüketim modeli: HTTP kullanırken, çekme veya gönderme teslim modunu kullanarak olayları kullanın.
- Sistem olayları – Yerleşik Azure hizmet olaylarıyla hızla çalışmaya başlayın.
- Kendi uygulama olaylarınız - Uygulamanızdan özel olayları yönlendirmek, filtrelemek ve güvenilir bir şekilde teslim etmek için Event Grid'i kullanın.
- İş ortağı olayları : İş ortağı SaaS sağlayıcı etkinliklerinize abone olun ve bunları Azure'da işleyin.
- Gelişmiş filtreleme – Olay işleyicilerinizin veya tüketici uygulamalarınızın yalnızca ilgili olayları aldığından emin olmak için olay türüne veya diğer olay özniteliklerine göre filtreleyin.
- Güvenilirlik – Anında iletme, olayların teslim edilmesi için üstel geri alma özelliğine sahip 24 saatlik bir yeniden deneme mekanizmasına sahiptir. Çekme teslimi kullanıyorsanız, uygulamanız olay tüketimi üzerinde tam denetime sahiptir.
- Yüksek aktarım hızı - Event Grid ile yüksek hacimli tümleşik çözümler oluşturun.
- Özel etki alanı adları - Kullanıcıların Event Grid ad alanının HTTP uç noktalarına kendi etki alanı adlarını atamasına olanak sağlayarak güvenliği artırır ve istemci yapılandırmasını basitleştirir.
Daha fazla bilgi için aşağıdaki makaleleri inceleyin:
- Çekme teslime genel bakış.
- Anında teslime genel bakış.
- Kavramlar
- Hızlı Başlangıç: Ad alanı konularını kullanarak uygulama olaylarını yayımlayın ve bu olaylara abone olun.
Kullanım örnekleri
Azure Event Grid'i kullanabileceğiniz kullanım örneklerinin listesi için bkz . Kullanım örnekleri
Desteklenen bölgeler
Yeni MQTT aracısı ve ad alanı konu özelliklerinin kullanılabildiği bölgelerin listesi aşağıdadır:
Region | Region | Region | Region |
---|---|---|---|
Doğu Avustralya | Avustralya Güneydoğu | Orta Avustralya | Orta Avustralya 2 |
Güney Brezilya | Güneydoğu Brezilya | Orta Kanada | Doğu Kanada |
Orta Hindistan | Central US | Doğu Asya | Doğu ABD |
Doğu ABD 2 | Batı ABD | Orta Fransa | Güney Fransa |
Kuzey Almanya | Orta Batı Almanya | Orta İsrail | Kuzey İtalya |
Doğu Japonya | Batı Japonya | Güney Kore - Orta | Güney Kore - Güney |
Meksika Orta | Orta Kuzey ABD | Kuzey Avrupa | Doğu Norveç |
Polonya Merkezi | Güney Afrika Batı | Güney Afrika Kuzey | Orta Güney ABD |
Güney Hindistan | Güneydoğu Asya | İspanya Orta | Orta İsveç |
Güney İsveç | Kuzey İsviçre | Batı İsviçre | Kuzey BAE |
BAE Orta | Güney Birleşik Krallık | Batı Birleşik Krallık | West Europe |
Batı ABD 2 | Batı ABD 3 | Batı Orta ABD |