Genel
Azure Event Hubs ad alanı nedir?
Ad alanı, olay hub'ları veya Kafka konuları için bir kapsam belirleyicidir. Size benzersiz bir FQDN verir. Ad alanı, birden çok olay hub'ı veya Kafka konu başlığı barındırabilen bir uygulama kapsayıcısı görevi görür.
Dağıtımdan sonra fiyatlandırma katmanını değiştirmek mümkün mü?
Hayır Dağıtıldıktan sonra, yeni bir kaynak dağıtmadan standart katmandan premium katmana geçmek (örneğin) mümkün değildir.
Ne zaman yeni bir ad alanı oluştururum ve var olan bir ad alanını kullanırım?
Kapasite ayırma aktarım hızı birimleri (TU) veya işleme birimleri (PU)) ad alanı düzeyinde faturalandırılır. Bir ad alanı da bir bölgeyle ilişkilendirilir.
Aşağıdaki senaryolardan birinde var olan bir ad alanını kullanmak yerine yeni bir ad alanı oluşturmak isteyebilirsiniz:
- Yeni bölgeyle ilişkilendirilmiş bir olay hub'ına ihtiyacınız var.
- Farklı bir abonelikle ilişkilendirilmiş bir olay hub'ına ihtiyacınız vardır.
- Belirli bir kapasite tahsisine sahip bir etkinlik hub'ına ihtiyacınız var (yani, eklenen etkinlik hub'ı ile ad alanı için kapasite gereksinimi 40 TU eşiğini aşacak ve özel kümeye gitmek istemiyorsunuz).
Event Hubs temel ve standart katmanları arasındaki fark nedir?
Azure Event Hubs'ın Standart katmanı, Temel katmanda sağlananların ötesinde özellikler sağlar. Aşağıdaki özellikler Standard'a eklenmiştir:
- Daha uzun olay saklama
- Dahil edilen sayının ötesine geçen ekstra aracılı bağlantılar için ek kullanım ücreti
- Tek bir tüketici grubundan fazlası
- Yakalama
- Kafka entegrasyonu
Event Hubs Ayrılmış Alan dahil olmak üzere fiyatlandırma katmanları hakkında daha fazla bilgi için, bkz. Event Hubs fiyatlandırma ayrıntıları.
Azure Event Hubs nerede kullanılabilir?
Azure Event Hubs desteklenen tüm Azure bölgelerinde kullanılabilir. Liste için Azure bölgeleri sayfasını ziyaret edin.
Birden çok olay hub'ından gönderip almak için tek bir Gelişmiş İleti Kuyruğa Alma Protokolü (AMQP) bağlantısı kullanabilir miyim?
Evet, tüm olay hub'ları aynı ad alanında olduğu sürece.
Olaylar için en uzun saklama süresi nedir?
Event Hubs standart katmanı şu anda yedi günlük maksimum saklama süresini desteklerken, premium ve ayrılmış katman için bu sınır 90 gündür. Olay hub'ları kalıcı bir veri deposu olarak tasarlanmamıştır. 24 saatten uzun saklama süreleri, bir olay akışını aynı sistemlere yeniden yürütmenin uygun olduğu senaryolara yöneliktir. Örneğin, mevcut verilerde yeni bir makine öğrenmesi modeli eğitmek veya doğrulamak için. yedi günden daha fazla ileti saklamaya ihtiyacınız varsa, olay hub'ınızda Event Hubs Capture'ı etkinleştirmek, verileri olay hub'ınızdan seçtiğiniz Depolama hesabına veya Azure Data Lake Service hesabına çeker. Yakalama'nın etkinleştirilmesi, satın aldığınız aktarım hızı birimlerine göre ücretlendirilir.
Depolama hesabınızda yakalanan veriler için saklama süresini yapılandırabilirsiniz. Azure Depolama'nın yaşam döngüsü yönetimi özelliği, genel amaçlı v2 ve blob depolama hesapları için zengin, kural tabanlı bir ilke sunar. Verilerinizi uygun erişim katmanlarına geçiş yapmak veya verilerin yaşam döngüsünün sonunda süresi dolmak için ilkeyi kullanın. Daha fazla bilgi için bkz . Azure Blob depolama yaşam döngüsünü yönetme.
Etkinlik hub'larını nasıl izlerim?
Event Hubs, kaynaklarınızın durumunu Azure İzleyici'ye sağlayan kapsamlı ölçümler yayar. Ayrıca Event Hubs hizmetinin genel durumunu yalnızca ad alanı düzeyinde değil, varlık düzeyinde de değerlendirmenize olanak sağlar. Azure Event Hubs için sunulan izleme hakkında bilgi edinin.
Azure Event Hubs verileri nerede depolar?
Azure Event Hubs standart, premium ve ayrılmış katmanları, Event Hubs ad alanı oluşturduğunuzda seçtiğiniz bölgede yayımlanan verileri depolar ve işler. Varsayılan olarak müşteri verileri bu bölgede kalır. Azure Event Hubs ad alanı için coğrafi olağanüstü durum kurtarma ayarlandığında meta veriler seçtiğiniz ikincil bölgeye kopyalanır. Bu nedenle, bu hizmet Güven Merkezi'nde belirtilenler de dahil olmak üzere bölge veri yerleşimi gereksinimlerini otomatik olarak karşılar.
Olayları göndermek ve almak için hangi protokolleri kullanabilirim?
Üreticiler veya gönderenler bir olay hub'ına olay göndermek için Gelişmiş Mesajlaşma Kuyruğa Alma Protokolü (AMQP), Kafka veya HTTPS protokollerini kullanabilir.
Tüketiciler veya alıcılar bir olay hub'ından olay almak için AMQP veya Kafka kullanır. Event Hubs, yalnızca olayların tüketicilere ulaşmasını sağlamak için çekme modelini destekler. Olay hub'ından olayları işlemek için olay işleyicileri kullandığınızda bile, olay işlemcisi olay hub'ından olay almak için çekme modelini dahili olarak kullanır.
AMQP
Azure Event Hubs'a olay göndermek ve olay almak için AMQP 1.0 protokolunu kullanabilirsiniz. AMQP, hem olay gönderme hem de alma için güvenilir, performanslı ve güvenli iletişim sağlar. Bunu yüksek performanslı ve gerçek zamanlı akış için kullanabilirsiniz ve çoğu Azure Event Hubs SDK'sı tarafından desteklenir.
HTTPS/REST API
Olayları yalnızca HTTP POST isteklerini kullanarak Event Hubs'a gönderebilirsiniz. Event Hubs, HTTPS üzerinden olay almayı desteklemez. Doğrudan TCP bağlantısının mümkün olmadığı basit istemciler için uygundur.
Apache Kafka
Azure Event Hubs,Kafka üreticilerini ve tüketicilerini destekleyen yerleşik bir Kafka uç noktasına sahiptir. Kafka kullanılarak oluşturulan uygulamalar, Olay Hub'larından herhangi bir kod değişikliği olmadan olay gönderip almak için Kafka protokollerini (sürüm 1.0 veya üzeri) kullanabilir.
Azure SDK'ları, temel alınan iletişim protokollerini soyutlar ve C#, Java, Python, JavaScript gibi dilleri kullanarak Event Hubs'dan olay gönderip almak için basitleştirilmiş bir yol sağlar.
Güvenlik duvarında hangi bağlantı noktalarını açmam gerekiyor?
Olayları göndermek ve almak için Azure Event Hubs ile aşağıdaki protokolleri kullanabilirsiniz:
- Gelişmiş Mesaj Kuyruğu Protokolü 1.0 (AMQP)
- Aktarım Katmanı Güvenliği (HTTPS) ile Köprü Metni Aktarım Protokolü 1.1
- Apache Kafka
Azure Event Hubs ile iletişim kurmak için bu protokolleri kullanmak üzere açmanız gereken giden bağlantı noktaları için aşağıdaki tabloya bakın.
| Protokol | Bağlantı Noktaları | Ayrıntılar |
|---|---|---|
| AMQP | 5671 ve 5672 | Bkz. AMQP protokol kılavuzu |
| HTTPS | 443 | Bu bağlantı noktası HTTP/REST API ve AMQP-over-WebSockets için kullanılır. |
| Kafka | 9093 | Bkz. Kafka uygulamalarından Event Hubs kullanma |
HTTPS bağlantı noktası, istemci SDK'ları tarafından gerçekleştirilen çeşitli yönetim işlemleri ve Microsoft Entra ID'den belirteçlerin alınması (kullanıldığında) HTTPS üzerinden çalıştırıldığından, 5671 numaralı bağlantı noktası üzerinden AMQP kullanıldığında da giden iletişim için gereklidir.
Resmi Azure SDK'ları genellikle Event Hubs'dan olay göndermek ve almak için AMQP protokollerini kullanır. AMQP-over-WebSockets protokol seçeneği, HTTP API'sinde olduğu gibi TCP 443 bağlantı noktası üzerinden çalışır, ancak aksi takdirde işlevsel olarak düz AMQP ile aynıdır. Bu seçenek, ekstra el sıkışma turlarının fazla olması ve HTTPS bağlantı noktası paylaşımından kaynaklanan biraz daha fazla ek yük nedeniyle daha yüksek ilk bağlantı gecikme süresine sahiptir. Bu mod seçilirse, iletişim için 443 numaralı TCP bağlantı noktası yeterlidir. Aşağıdaki seçenekler düz AMQP veya AMQP WebSockets modunun seçilmesine izin verir:
| Dil | Seçenek |
|---|---|
| .NET | "EventHubConnectionOptions.TransportType özelliği, EventHubsTransportType.AmqpTcp veya EventHubsTransportType.AmqpWebSockets ile kullanılabilir." |
| Java | com.microsoft.azure.eventhubs.EventProcessorClientBuilder.transporttype ile AmqpTransportType.AMQP veya AmqpTransportType.AMQP_WEB_SOCKETS |
| Düğüm |
EventHubConsumerClientOptions'ın bir webSocketOptions özelliği vardır. |
| Python | EventHubConsumerClient.transport_type ile TransportType.Amqp veya TransportType.AmqpOverWebSocket |
Hangi IP adreslerine izin vermeliyim?
Azure ile çalışırken, bazen şirket güvenlik duvarınızdaki veya ara sunucunuzdaki belirli IP adresi aralıklarına veya URL'lere kullandığınız veya kullanmaya çalıştığınız tüm Azure hizmetlerine erişmesine izin vermek zorunda olursunuz. Event Hubs tarafından kullanılan IP adreslerinde trafiğe izin verildiğini doğrulayın. Azure Event Hubs tarafından kullanılan IP adresleri için bkz . Azure IP Aralıkları ve Hizmet Etiketleri - Genel Bulut.
Ayrıca, ad alanınızın IP adresine izin verildiğini doğrulayın. Bağlantılarınıza izin vermek üzere doğru IP adreslerini bulmak için şu adımları izleyin:
Bir komut isteminden aşağıdaki komutu çalıştırın:
nslookup <YourNamespaceName>.servicebus.windows.netNon-authoritative answer'de döndürülen IP adresini not edin.
Eski bir kümede barındırılan bir ad alanı kullanıyorsanız (Cloud Services tabanlı - *.cloudapp.net ile biten CNAME) ve ad alanı bölge yedekliliğine sahipse
İlk olarak, ad alanında nslookup çalıştırırsınız.
nslookup <yournamespace>.servicebus.windows.netAşağıdaki biçimlerden birinde yer alan yetkili olmayan yanıt bölümündeki adı not edin:
<name>-s1.cloudapp.net <name>-s2.cloudapp.net <name>-s3.cloudapp.nets1, s2 ve s3 sonekleri olan her biri için ayrı ayrı nslookup komutunu çalıştırarak üç erişilebilirlik bölgesinde çalışmakta olan üç örneğin IP adreslerini elde edin.
Not
Komut tarafından
nslookupdöndürülen IP adresi statik bir IP adresi değildir. Ancak, temel alınan dağıtım silinene veya farklı bir kümeye taşınana kadar sabit kalır.
Hangi istemci IP'leri ad alanıma olay gönderiyor veya ad alanımdan olay alıyor?
İlk olarak, ad alanında IP filtrelemeyi etkinleştirin.
Ardından, Tanılama günlüklerini etkinleştirme başlığındaki yönergeleri izleyerek Event Hubs sanal ağ bağlantısı olayları için tanılama günlüklerini etkinleştirin. Bağlantının reddedildiği IP adresini görürsünüz.
{
"SubscriptionId": "0000000-0000-0000-0000-000000000000",
"NamespaceName": "namespace-name",
"IPAddress": "1.2.3.4",
"Action": "Deny Connection",
"Reason": "IPAddress doesn't belong to a subnet with Service Endpoint enabled.",
"Count": "65",
"ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/testrg/providers/microsoft.eventhub/namespaces/namespace-name",
"Category": "EventHubVNetConnectionEvent"
}
Önemli
Sanal ağ günlükleri yalnızca ad alanı belirli IP adreslerinden (IP filtresi kuralları) erişime izin veriyorsa oluşturulur. Bu özellikleri kullanarak ad alanınıza erişimi kısıtlamak istemiyorsanız ve yine de Event Hubs ad alanına bağlanan istemcilerin IP adreslerini izlemek için sanal ağ günlükleri almak istiyorsanız, şu geçici çözümü kullanabilirsiniz: IP filtrelemeyi etkinleştirin ve adreslenebilir toplam IPv4 aralığını (0.0.0.0/1 - 128.0.0.0/1) ve IPv6 aralığını (::/1 - 8000::/1) ekleyin.
Not
Şu anda tek bir iletinin veya olayın kaynak IP'sini belirlemek mümkün değildir.
Apache Kafka tümleştirmesi
Mevcut Kafka uygulamamı Event Hubs ile tümleştirme Nasıl yaparım??
Event Hubs, mevcut Apache Kafka tabanlı uygulamalarınız tarafından kullanılabilecek bir Kafka uç noktası sağlar. PaaS Kafka deneyimine sahip olmak için gereken tek şey yapılandırma değişikliğidir. Kendi Kafka kümenizi çalıştırmaya bir alternatif sağlar. Event Hubs Apache Kafka 1.0 ve daha yeni istemci sürümlerini destekler ve mevcut Kafka uygulamalarınızla, araçlarınızla ve çerçevelerinizle çalışır. Daha fazla bilgi için Kafka deposu için Event Hubs bölümüne bakın.
Mevcut uygulamamın Event Hubs ile iletişim kurabilmek için hangi yapılandırma değişikliklerinin yapılması gerekiyor?
Olay hub'ına bağlanmak için Kafka istemci yapılandırmalarını güncelleştirmeniz gerekir. Bir Event Hubs ad alanı oluşturularak ve bağlantı dizesi elde edilerek yapılır. Bootstrap.servers dosyasını Event Hubs FQDN'sini ve bağlantı noktasını 9093 olarak işaret eden şekilde değiştirin. Kafka istemcisini burada gösterildiği gibi doğru kimlik doğrulamasıyla Event Hubs uç noktanıza (elde ettiğiniz bağlantı dizesidir) yönlendirmek için sasl.jaas.config güncelleştirin:
bootstrap.servers={YOUR.EVENTHUBS.FQDN}:9093
request.timeout.ms=60000
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}";
Örnek:
bootstrap.servers=dummynamespace.servicebus.windows.net:9093
request.timeout.ms=60000
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="Endpoint=sb://dummynamespace.servicebus.windows.net/;SharedAccessKeyName=DummyAccessKeyName;SharedAccessKey=XXXXXXXXXXXXXXXXXXXXX";
Not
sasl.jaas.config çerçevenizde desteklenen bir yapılandırma değilse, Basit Kimlik Doğrulama ve Güvenlik Katmanı (SASL) kullanıcı adı ve parolasını ayarlamak için kullanılan yapılandırmaları bulun ve bunun yerine bunları kullanın. Kullanıcı adını $ConnectionString ve parolayı Event Hubs bağlantı dizesi olarak ayarlayın.
Event Hubs için ileti/olay boyutu nedir?
Event Hubs için izin verilen ileti boyutu üst sınırı 1 MB'tır.
Verim birimleri
Event Hubs aktarım hızı birimleri nelerdir? (Standart seviye)
Event Hubs'taki aktarım hızı, Event Hubs üzerinden giriş ve çıkış olarak gerçekleşen 1 KB'lık olayların mega bayt cinsinden veri miktarını veya 1 KB'lik olayların (bin cinsinden) sayısını tanımlar. Bu aktarım hızı, aktarım hızı birimleri (TU) cinsinden ölçülür. Event Hubs hizmetini kullanmaya başlamadan önce TU satın alın. Portal veya Event Hubs Resource Manager şablonlarını kullanarak Event Hubs TU'larını açıkça seçebilirsiniz.
Aktarım hızı birimleri bir ad alanındaki tüm olay hub'larına uygulanır mı?
Evet, aktarım hızı birimleri (TU) bir Event Hubs ad alanındaki tüm olay hub'larına uygulanır. Bu, TU'ları ad alanı düzeyinde satın aldığınız ve bu ad alanının altındaki olay hub'ları arasında paylaşıldığınız anlamına gelir. Her TU ad alanını aşağıdaki özelliklere hak kazanır:
- Giriş olaylarının saniyede 1 MB'a kadar (olay hub'ına gönderilen olaylar) ama saniyede en fazla 1.000 giriş olayı, yönetim işlemi veya denetim API'si çağrısı yoktur.
- Saniyede 2 MB'a kadar veri tüketimi, ancak 4,096 çıkış olayını aşmayacak şekilde (olay hub'ından tüketilen olaylar).
- 84 GB'a kadar olay depolama alanı (varsayılan 1 saatlik saklama süresi için yeterli).
Aktarım hızı birimleri nasıl faturalandırılır?
Aktarım hızı birimleri (TU) saatlik olarak faturalandırılır. Faturalama, belirtilen saat içinde seçilen birim sayısı üst sınırına bağlıdır.
Aktarım hızı birimlerimdeki kullanımı nasıl iyileştirebilirim?
Bir aktarım hızı birimi (TU) kadar düşük bir başlangıç yapabilir ve otomatik genişlemeyi açabilirsiniz. Otomatik şişirme özelliği, trafiğiniz/yükünüz arttıkça TU'larınızı büyütmenize olanak tanır. TU sayısı için üst sınır da ayarlayabilirsiniz.
Event Hubs'ın Otomatik Genişleme özelliği nasıl çalışır?
Otomatik genişleme özelliği, verim birimlerinizi (TU) artırmanıza olanak tanır. Bu, düşük TU satın alarak başlayabileceğiniz ve girişiniz arttıkça TU'larınızın ölçeğini otomatik olarak artırabileceğiniz anlamına gelir. Size uygun maliyetli bir seçenek sunar ve yönetecek TU sayısını tam olarak denetler. Bu özellik yalnızca ölçeği artırma özelliğidir ve TU sayısını güncelleştirerek ölçeği azaltmayı tamamen denetleyebilirsiniz.
2 TU gibi düşük aktarım hızı birimleriyle (TU) başlamak isteyebilirsiniz. Trafiğinizin 15 RU'ya kadar büyüyebileceğini tahmin ediyorsanız, ad alanınızda otomatik şişirme özelliğini etkinleştirin ve maksimum sınırı 15 TU olarak ayarlayın. Artık trafiğiniz büyüdükçe TU'larınızı otomatik olarak büyütebilirsiniz.
Otomatik şişirme özelliğini etkinleştirdiğimde ilişkili bir maliyet var mı?
Bu özellik ile ilişkili bir maliyet yoktur.
Bölge Yedekliliği mevcut bir Event Hubs Ad Alanı için etkinleştirilebilir mi?
Eski Event Hubs ad alanları farklı kümelerde olduğundan ve yeni olay hub'ı ad alanları oluşturulduğunda alanlar arası yedekliliği otomatik olarak etkinleştiren yeni kümelere geçirmenin hiçbir yolu olmadığından bu şu anda mümkün değildir.
Verim sınırları nasıl uygulanır?
Bir ad alanındaki tüm olay hub'larında toplam giriş aktarım hızı veya toplam giriş olay hızı toplam aktarım hızı birim izinlerini aşıyorsa, gönderenler kısıtlanır ve giriş kotasının aşıldığını belirten hatalar alır.
Bir ad alanındaki tüm olay hub'larında toplam dış akış aktarım hızı veya toplam olay dış akış hızı, toplam aktarım hızı birimi izinlerini aşarsa, alıcılar kısıtlanır ancak kısıtlama hatası oluşturulmaz.
Giriş ve çıkış kotaları ayrı ayrı uygulanır, böylece hiçbir gönderen olay tüketiminin yavaşlamamasına neden olmaz ve bir alıcı olayların olay hub'ına gönderilmesini önleyemez.
Ayrılmış/seçilebilen aktarım hızı birimi sayısıyla ilgili bir sınır var mı?
Azure portalında, temel veya standart katmanlı bir ad alanı oluştururken, ad alanı için en fazla 40 TU seçebilirsiniz. Event Hubs, 40 TU'dan sonra Event Hubs Premium ve Event Hubs Ayrılmış kümeleri gibi kaynak/kapasite tabanlı modeller sunar. Daha fazla bilgi için Event Hubs Premium'e genel bakış ve Event Hubs Dedicated - genel bakış bölümüne bakın.
Özel kümeler
Ayrılmış küme nedir?
Event Hubs özel kümeler, en zorlu gereksinimleri olan müşterilere tek kiracılı dağıtımlar sunar. Bu teklif, aktarım hızı birimlerine bağlı olmayan kapasite tabanlı bir küme oluşturur. Bu, kümenin CPU ve bellek kullanımıyla belirlenen şekilde verilerinizi almak ve gerçek zamanlı akış sağlamak için kümeyi kullanabileceğiniz anlamına gelir. Daha fazla bilgi için bkz. Event Hubs Ayrılmış Kümeler.
Event Hubs Ayrılmış Kümesi nasıl oluştururum?
Event Hubs ayrılmış kümesini ayarlama hakkında adım adım yönergeler ve daha fazla bilgi için bkz. Hızlı Başlangıç: Azure portalını kullanarak ayrılmış Event Hubs kümesi oluşturma.
Küme ile ne elde ederim?
Event Hubs kümesi için ne kadar veri alıp aktarabileceğiniz, üreticileriniz, tüketicileriniz ve verileri alma ve işleme hızınız gibi faktörlere bağlıdır.
Aşağıdaki tabloda, eski bir ayrılmış kümeyle testimiz sırasında elde ettiğimiz karşılaştırma sonuçları gösterilmektedir.
| Yük şekli | Alıcılar | Giriş bant genişliği | Giriş iletileri | Çıkış bant genişliği | Çıkış iletileri | Toplam TU sayısı | CU başına TU sayısı |
|---|---|---|---|---|---|---|---|
| 100 adet 1 KB grupları | 2 | 400 MB/sn | 400 bin ileti/sn | 800 MB/sn | 800 bin ileti/sn | 400 İşlem Birimleri | 100 TU |
| 10x10KB'lik partiler | 2 | 666 MB/sn | 66,6k ileti/sn | 1,33 GB/sn | 133k ileti/sn | 666 TU | 166 Çeviri Birimi |
| 6 adet 32 KB'lik toplu işler | 1 | 1,05 GB/sn | 34k ileti/sn | 1,05 GB/sn | 34k ileti/sn | 1.000 TU | 250 Çevri Birimi |
Testte aşağıdaki ölçütler kullanıldı:
- Dört KA'ya sahip ayrılmış Event Hubs kümesi kullanıldı.
- Alım için kullanılan olay merkezi 200 bölüme sahipti.
- Alınan veriler, tüm bölümlerden veri akışını işleyen iki alıcı uygulama tarafından işlendi.
Kümemin ölçeğini artırabilir veya küçültebilir miyim?
Kümeyi Destek ölçeklendirme seçeneği kümesiyle oluşturursanız, gerektiğinde ölçeği genişletmek ve daraltmak için self servis deneyimini kullanabilirsiniz. Kendi kendine hizmet veren ölçeklenebilir kümelerle 10 İşlem Birimi'ne kadar ölçeklendirme yapabilirsiniz. Self servis ölçeklenebilir ayrılmış kümeler yeni altyapıyı temel alır, bu nedenle self servis ölçeklendirmeyi desteklemeyen ayrılmış kümelerden daha iyi performans gösterirler. Ayrılmış kümelerin performansı kaynak ayırma, bölüm sayısı ve depolama gibi faktörlere bağlıdır. Gerçek bir iş yüküyle test ettikten sonra gerekli CU sayısını belirlemenizi öneririz.
- Kendi kendine hizmet veren ölçeklenebilir adanmış bir küme (Ölçeklendirme desteği seçeneği etkinleştirilmiş bir küme) için 10'dan fazla Hesaplama Birimi'ne (CU) ihtiyacınız vardır.
- Destek ölçeklendirme seçeneğini belirtmeden oluşturulmuş bir kümede ölçeği genişletmeniz veya ölçeklendirmeniz gerekir.
- Self servis deneyimi yayınlanmadan önce oluşturulmuş ayrılmış bir kümede ölçeği genişletmeniz veya ölçeklendirmeniz gerekir.
Uyarı
Kümeyi oluşturduktan sonra en az dört saat silemezsiniz. Kümenin en az dört saatlik kullanımı için ücretlendirilirsiniz. Fiyatlandırma hakkında daha fazla bilgi için bkz . Event Hubs fiyatlandırması.
Eski bir kümeden self servis ölçeklenebilir bir kümeye geçiş yapabilir miyim?
Altta yatan donanım ve yazılım altyapısındaki farklılık nedeniyle, şu anda self-servis ölçeklendirmeyi desteklemeyen kümelerin self-servis ölçeklenebilir özel kümelere geçişini desteklemiyoruz. Self servis ölçeklendirme kullanmak istiyorsanız kümeyi yeniden oluşturmanız gerekir. Ölçeklenebilir bir kümenin nasıl oluşturulacağını öğrenmek için Event Hubs ayrılmış kümesi oluşturma sayfasına bakın.
Ayrılmış kümemi ne zaman ölçeklendirmeliyim?
CPU tüketimi, ayrılmış kümenizin kaynak tüketiminin temel göstergesidir. Genel CPU tüketimi %70'e ulaşmaya başladığında (çok fazla sayıda sunucu hatası veya düşük sayıda başarılı istek gibi anormal koşullar gözlemlemeden), bu, kümenizin maksimum kapasitesine doğru ilerlediği anlamına gelir. Ayrılmış kümenizin ölçeğini artırmanız gerekip gerekmediğini göz önünde bulundurmak için bu bilgileri gösterge olarak kullanabilirsiniz.
Ayrılmış kümenin CPU kullanımını izlemek için şu adımları izleyin:
Event Hubs ayrılmış kümenizin Ölçüm sayfasında Ölçüm ekle'yi seçin.
CPU'yu ölçüm olarak seçin ve artıma olarak Max'ı kullanın.
Filtre ekle'yi seçin ve Özellik türü Rol için bir filtre ekleyin. eşittir işlecini kullanın ve açılan listeden tüm değerleri (Arka uç ve Ağ Geçidi) seçin.
Ardından, ayrılmış kümenizi ne zaman ölçeklendirmeniz gerektiğini belirlemek için bu ölçümü izleyebilirsiniz. CPU kullanımı belirlediğiniz eşiklere ulaştığında bildirim almak için bu ölçüme karşı uyarılar da ayarlayabilirsiniz.
Coğrafi olağanüstü durum kurtarma kümemle nasıl çalışır?
Ayrılmış katman kümesi altındaki bir ad alanını Ayrılmış katman kümesi altındaki başka bir ad alanıyla coğrafi olarak eşleştirebilirsiniz. Aktarım hızı sınırı uyumsuz olduğundan ve hatalarla sonuçlandığından, Ayrılmış katman ad alanını Standart teklifteki bir ad alanıyla eşleştirmeyi önermeyiz.
Standart veya Premium ad alanlarımı Ayrılmış katman kümesine geçirebilir miyim?
Event Hubs verilerinizi standart veya Premium ad alanından ayrılmış bir ad alanına geçirmek için otomatik geçiş işlemini şu anda desteklemiyoruz.
Eski bölge yedekli ayrılmış bir kümede neden en az sekiz CU var?
Dedicated sunucu teklifi için bölge yedekliliği sağlamak amacıyla, tüm bilişim kaynaklarının aynı bölgede bulunan üç veri merkezinde üç adet kopyası olmalıdır. Bu minimum gereksinim, alanlar arası yedekliliği destekler (iki bölge veya veri merkezi kapalı olduğunda hizmetin çalışmaya devam edebilmesi için) ve sekiz CU'ya eşdeğer bir işlem kapasitesine neden olur.
Bu kotayı değiştiremiyoruz. Bu, ayrılmış katmana sahip bu mimarinin yapısal bir kısıtlamasıdır.
Disk Bölümleri
Kaç bölüme ihtiyacım var?
Bölüm, paralel yayımlama ve tüketim sağlayan bir veri düzenleme mekanizmasıdır. Paralel işleme ve ölçeklendirmeyi desteklese de, toplam kapasite ad alanının ölçekleme kapasitesiyle sınırlı kalır. En iyi ölçeği elde etmek için ölçeklendirme birimlerini (standart katman için aktarım hızı birimleri, premium katman için işleme birimleri veya ayrılmış katman için kapasite birimleri) ve bölümleri dengeleyin.
İş yükü profilinizle başlayın: ortalama yük boyutu, saniye başına olaylar ve aktarım hızı düşüşlerine veya gecikme süresi artışlarına duyarlılık. Başlangıç noktası olarak aşağıdaki bölüm başına aktarım hızını kullanın ve ardından yük testleriyle doğrulayın:
- Standart katman: Bölüm başına ~1 MB/sn giriş ve ~2 MB/sn çıkış.
- Premium ve Ayrılmış katmanlar: Bölüm başına ~1-2 MB/sn giriş ve ~2-5 MB/sn çıkış.
Beklenen giriş ve çıkışlarınızı ilgili bölüm başına hızlara bölerek ve daha büyük sonucu alarak bölümleri tahmin edin. Gözlemlenen aktarım hızı veya gecikme süresi beklentileri karşılamıyorsa bölümleri artırın (yalnızca Premium ve Ayrılmış katmanlar) ve yeniden test edin.
Bölümler ayrıca tüketici paralelliği için tavanı da ayarlar. Bu tavanın nasıl çalıştığı tüketici türüne bağlıdır:
-
Epoch (özel) tüketicileri — (.NET, Java) ve
EventProcessorClient(Python, JavaScript) tarafından üretim AMQP iş yükleri için önerilen desen olarakEventHubConsumerClientkullanılır. Bir tüketici grubundaki belirli bir bölüme, her zaman yalnızca bir epoch tüketicisi sahip olabilir. Bölümlerden daha fazla işlemci örneği dağıtırsanız, ek örneklere herhangi bir bölüm atanamaz ve mevcut sahip bir tane serbest bırakana kadar boşta durur. Yeni bir dönem tüketicisi daha yüksek bir sahip düzeyiyle bağlanırsa, hizmet mevcut sahibin bağlantısını birConsumerDisconnectedhatayla keser ve yeni tüketici devralır. - Dönem dışı tüketiciler — En fazla 5 dönem dışı alıcı aynı bölümü bir tüketici grubu içinde eşzamanlı olarak okuyabilir. Her alıcı aynı olayları (fan-out) görür, bu nedenle bu mod bölüm başına işleme aktarım hızını artırmaz. Bir dönem tüketicisini bir bölüme bağlamak, bu bölümdeki dönem dışı tüm tüketicilerin bağlantısını keser.
-
Kafka tüketicileri — Kafka tüketicileri AMQP dönemleri yerine grup koordinasyon protokollerini (
group.id) kullanır, ancak bölüm sahipliği modeli eşdeğerdir: her bölüm aynı anda bir tüketici grubu içinde tam olarak bir tüketici üyesine atanır. Yeni bir üye katıldığında veya mevcut bir üye ayrıldığında, grup bölüm atamalarını yeniden dengeler ve yeniden dağıtır. Bölümlerden daha fazla tüketici üyesi varsa, fazla üyeler atama almaz ve gelecekteki yeniden dengeleme bir bölümü boşaltana kadar boşta kalır. Geçici bağlantı kesilmelerinden kaynaklanan gereksiz yeniden dengelemeyi azaltmak için her tüketici örneğine benzersiz birgroup.instance.id(statik üyelik) ayarlayın.
Uygulamada, bölüm sayısı, AMQP epoch tüketicileri veya Kafka tüketicileri kullansanız da fark etmeksizin, tüketici grubu başına maksimum paralel tüketici sayısına eşittir. Ölçeği genişletmeyi planlarken bunu bölüm sayınıza hesaba katabilirsiniz.
Uygulamanızın belirli bir bölüme benzisi varsa, bölüm sayısını artırmak yararlı olmaz. Daha fazla bilgi için bkz . kullanılabilirlik ve tutarlılık.
Event Hubs'ın Standart katmanındaki bölüm sayısını artırabilir miyim?
Hayır, bölümler Standart katmanda sabit olduğundan bu mümkün değildir. Bölümlerin dinamik olarak eklenmesi yalnızca Event Hubs'ın premium ve ayrılmış katmanlarında kullanılabilir.
Fiyatlandırma
Daha fazla fiyatlandırma bilgilerini nereden bulabilirim?
Event Hubs fiyatlandırması hakkında tam bilgi için bkz . Event Hubs fiyatlandırma ayrıntıları.
Event Hubs olaylarını 24 saatten uzun süre saklamak için ücret uygulanır mı?
Event Hubs Standart katmanı, en fazla yedi gün boyunca 24 saatten uzun ileti saklama sürelerine izin verir. Depolanan toplam olay sayısının boyutu, seçilen aktarım hızı birimi sayısı için (aktarım hızı birimi başına 84 GB) depolama alanını aşarsa, ayrılan değeri aşan boyut yayımlanan Azure Blob depolama hızında ücretlendirilir. Her aktarım hızı birimindeki depolama alanı, aktarım hızı birimi en fazla giriş iznine kadar kullansa bile 24 saatlik saklama süreleri için tüm depolama maliyetlerini kapsar.
Event Hubs depolama boyutu nasıl hesaplanır ve ücretlendirilir?
Tüm depolanan olayların boyutu, olay üst bilgileri için dahili ek yükler veya tüm olay hub'larındaki disk depolama yapıları dahil olmak üzere gün boyunca ölçülür. Günün sonunda en büyük depolama boyutu hesaplanır. Günlük depolama alanı kullanım sınırı, gün boyunca seçilen en az aktarım hızı birimi sayısına göre hesaplanır (her bir aktarım hızı birimi 84 GB'lık kullanım sınırı sağlar). Toplam boyut hesaplanan günlük depolama alanını aşarsa, fazla depolama Alanı Azure Blob depolama oranları (Yerel Olarak Yedekli Depolama fiyatı üzerinden) kullanılarak faturalandırılır.
Giriş olayları nasıl hesaplanır?
Bir olay hub'ına gönderilen her olay faturalanabilir ileti olarak sayılır. Giriş olayı, 64 KB'tan küçük veya buna eşit bir veri birimi olarak tanımlanır. Boyutu 64 KB'tan küçük veya buna eşit olan tüm olaylar tek bir faturalanabilir olay olarak kabul edilir. Olay 64 KB'tan büyükse, faturalanabilir olayların sayısı olay boyutuna göre 64 KB'ın katları cinsinden hesaplanır. Örneğin, olay hub'ına gönderilen 8 KB'lık bir olay tek olay olarak faturalandırılır, ancak olay hub'ına gönderilen 96 KB'lık bir ileti iki olay olarak faturalandırılır.
Etkinlik hub'ından tüketilen etkinlikler ve denetim noktaları gibi yönetim işlemleri ve denetim çağrıları fatura edilebilir giriş etkinlikleri olarak sayılmaz, ancak verim birimi iznine kadar tahakkuk eder.
Aracılı bağlantı ücretleri Event Hubs için geçerli mi?
Bağlantı ücretleri yalnızca AMQP protokolü kullanıldığında uygulanır. Gönderen sistem veya cihazların sayısı ne olursa olsun, HTTP kullanarak olay göndermeye ilişkin herhangi bir bağlantı ücreti yoktur. AMQP kullanmayı planlıyorsanız (örneğin, daha verimli olay akışı elde etmek veya IoT komut ve denetim senaryolarında çift yönlü iletişimi etkinleştirmek için), her hizmet katmanına kaç bağlantının dahil olduğu hakkında ayrıntılı bilgi için Event Hubs fiyatlandırma bilgileri sayfasına bakın.
Event Hubs Yakalama nasıl faturalandırılır?
Yakalama, ad alanındaki herhangi bir olay hub'ında Yakalama seçeneği etkinleştirildiğinde etkinleştirilir. Event Hubs Capture, satın alınan aktarım hızı birimi başına aylık olarak faturalandırılır. İşleme birimi sayısı arttıkça veya azaldıkça, Event Hubs Capture faturalaması bu değişiklikleri tam saatlik dilimlerle yansıtır. Event Hubs Capture faturalaması hakkında daha fazla bilgi için bkz . Event Hubs fiyatlandırma bilgileri.
Event Hubs Capture için seçtiğim depolama hesabı için faturalandırılırım mı?
Yakalama, bir olay hub'ında etkinleştirildiğinde sağladığınız bir depolama hesabını kullanır. Depolama hesabınız olduğundan, bu yapılandırmada yapılan tüm değişiklikler Azure aboneliğinize faturalandırılır.
Kotalar
Event Hubs ile ilişkili kota var mı?
Tüm Event Hubs kotalarının listesi için kotalar'a bakın.
Sorun giderme
Neden başka bir abonelikten sildiğim ad alanını tekrar oluşturamıyorum?
Bir abonelikten bir ad alanını sildiğinizde, ad alanını başka bir abonelikte aynı adla yeniden oluşturmadan önce 4 saat bekleyin. Aksi takdirde şu hata iletisini alabilirsiniz: Namespace already exists.
Event Hubs tarafından oluşturulan bazı özel durumlar ve bunların önerilen eylemleri nelerdir?
Olası Event Hubs özel durumlarının listesi için bkz . Özel durumlara genel bakış.
Tanılama günlükleri
Event Hubs iki tür tanılama günlüğünü destekler: Hata günlüklerini ve işlem günlüklerini yakalayın; her ikisi de json ile gösterilir ve Azure portalı üzerinden açılabilir.
Destek ve Hizmet Düzeyi Anlaşması (SLA)
Event Hubs için teknik desteğe Azure Service Bus için Microsoft Soru-Cevap soru sayfasından ulaşabilirsiniz. Faturalandırma ve abonelik yönetim desteği ücretsiz olarak sunulmaktadır.
SLA'mız hakkında daha fazla bilgi edinmek için Hizmet Düzeyi Sözleşmeleri sayfasına bakın.
Azure Stack Hub
denetim noktası deposu olarak Azure Blob Depolama kullanırken Azure Depolama SDK'sının belirli bir sürümünü nasıl hedefleyebilirim?
Bu kodu Azure Stack Hub'da çalıştırırsanız belirli bir Depolama API'sini hedeflemediğiniz sürece çalışma zamanı hatalarıyla karşılaşırsınız. Bunun nedeni Event Hubs SDK'sının Azure Stack Hub platformunuzda kullanılamayabilecek Azure'da kullanılabilen en son Azure Depolama API'sini kullanmasıdır. Azure Stack Hub, Depolama Blob SDK'sının Azure'da tipik olarak mevcut olandan farklı bir sürümünü destekleyebilir. Denetim noktası deposu olarak Azure Blog Depolama kullanıyorsanız Azure Stack Hub derlemeniz için desteklenen Azure Depolama API'sinin sürümünü denetleyin ve kodunuzda bu sürümü hedefleyin.
Örneğin, Azure Stack Hub sürüm 2005'te çalıştırıyorsanız Depolama hizmeti için en yüksek kullanılabilir sürüm 2019-02-02 sürümüdür. Event Hubs SDK istemci kitaplığı varsayılan olarak Azure'da en yüksek kullanılabilir sürümü kullanır (SDK'nın yayımlandığı sırada 2019-07-07). Bu durumda, bu bölümdeki adımların yanı sıra Depolama hizmeti API'sinin 2019-02-02 sürümünü hedeflemek için kod eklemeniz de gerekir. Belirli bir Depolama API'si sürümünü hedefleme örneği için aşağıdaki C#, Java, Python ve JavaScript/TypeScript örneklerine bakın.
Kodunuzdan belirli bir Depolama API'sinin sürümünü hedefleme örneği için GitHub'da aşağıdaki örneklere bakın:
- .NET
- Java
- Python - Senkron, Asenkron
- JavaScript ve TypeScript
Sonraki adımlar
Aşağıdaki bağlantıları inceleyerek Event Hubs hakkında daha fazla bilgi edinebilirsiniz: