Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Dayanıklı Görev Zamanlayıcı, Azure'da kalıcı yürütme sağlar. Dayanıklı yürütme, otomatik yeniden denemeler ve durum kalıcılığı aracılığıyla hataları ve kesintileri işleyen kodu çalıştırmaya yönelik hataya dayanıklı bir yaklaşımdır. Dayanıklı yürütme, şunlar gibi senaryolarda yardımcı olur:
- Dağıtılmış işlemler
- Çok aracılı düzenleme
- Bilgi işlem
- Altyapı yönetimi
Dayanıklı Görev Zamanlayıcı, Dayanıklı İşlevler ve Dayanıklı Görev SDK'ları için önerilen depolama sağlayıcısıdır.
Desteklenen SKU'lar
Dayanıklı İşlevler için, Dayanıklı Görev Zamanlayıcısını herhangi bir İşlev SKU'su ile kullanabilirsiniz.
Dayanıklı Görev SDK'ları için Dayanıklı Görev Zamanlayıcı'yı herhangi bir işlemle kullanabilirsiniz.
Zamanlayıcının kendisi iki faturalama SKU'sunu sunar:
Desteklenen bölgeler
Dayanıklı Görev Zamanlayıcı çoğu Azure bölgede kullanılabilir. Kullanılabilir bölgelerin geçerli listesini almak için aşağıdaki komutu çalıştırın:
az provider show --namespace Microsoft.DurableTask --query "resourceTypes[?resourceType=='schedulers'].locations | [0]" --out table
Performansı ve ağ ile ilgili belirli işlevleri iyileştirmek için Dayanıklı İşlevler uygulamanız ve Dayanıklı Görev Zamanlayıcı kaynakları için aynı bölgeyi kullanmayı göz önünde bulundurun.
Düzenleme çerçeveleri
Dayanıklı Görev Zamanlayıcı hem Dayanıklı İşlevler hem de Dayanıklı Görev SDK'ları ile çalışır. Projeniz için en uygun çerçeveyi seçin.
Architecture
Tüm Dayanıklı Görev Zamanlayıcı orkestrasyon çerçeveleri için Azure Resource Manager kullanarak Microsoft.DurableTask/scheduler türünde zamanlayıcı örnekleri oluşturabilirsiniz. Her zamanlayıcı kaynağı, dahili olarak, aşağıdakiler için optimize edilmiş kendi özel işlem ve bellek kaynaklarına sahiptir:
- Düzenleyici, etkinlik ve varlık iş öğelerini gönderme
- Minimum gecikme süresiyle büyük ölçekte geçmişi depolama ve sorgulama
- Dayanıklı Görev Zamanlayıcı panosu aracılığıyla zengin bir izleme deneyimi sağlama
BYO depolama sağlayıcılarının aksine, Dayanıklı Görev Zamanlayıcı sağlayıcısı, Durable Görev Çerçevesinin belirli gereksinimleri için optimize edilmiş, amaca yönelik bir backend hizmetidir.
Aşağıdaki diyagramda Dayanıklı Görev Zamanlayıcı arka ucu mimarisi ve bağlı uygulamalarla etkileşimi gösterilmektedir.
İşletimsel ayrım
Dayanıklı Görev Zamanlayıcı, Azure uygulamasından ayrı bir kaynak olarak çalışır. Bu yalıtım çeşitli nedenlerle önemlidir:
Azaltılmış kaynak tüketimi
Durum yönetiminin yönetilen bir zamanlayıcıya boşaltılması, bir BYO depolama sağlayıcısının kullanımına kıyasla uygulamanızda CPU ve bellek tüketimini azaltır.Hata yalıtımı
Zamanlayıcıyı uygulamadan ayırmak, basamaklı hata riskini azaltır ve bağlı uygulamalarınızda genel güvenilirliği artırır.Bağımsız ölçeklendirme
Zamanlayıcı kaynağı, daha iyi altyapı kaynak yönetimi ve maliyet iyileştirmesi için uygulamadan bağımsız olarak ölçeklendirilebilir. Örneğin, birden çok uygulama aynı zamanlayıcı kaynağını paylaşabilir ve bu da birden çok ekip veya proje içeren kuruluşlar için yararlıdır.Geliştirilmiş destek deneyimi
Dayanıklı Görev Zamanlayıcı, temel alınan altyapıyla ilgili sorunlar için kolaylaştırılmış destek ve tanılama sağlayan yönetilen bir hizmettir.
Uygulama bağlantısı
Uygulamalarınız, TLS kullanılarak güvenliği sağlanan ve uygulamanın kimliğiyle kimliği doğrulanan gRPC bağlantısı aracılığıyla zamanlayıcı kaynağına bağlanır. Uç nokta adresi, benzeri {scheduler-name}.{region}.durabletask.io bir biçimdedir. Örneğin, myscheduler-123.westus2.durabletask.io.
Özel bağlantı gerektiren senaryolarda, trafiği genel İnternet yerine sanal ağınızdaki özel bir bağlantı üzerinden zamanlayıcıya yönlendirmek için özel uç noktaları kullanabilirsiniz.
İş öğeleri, zamanlayıcıdan uygulamaya bir itme modeli kullanılarak akış şeklinde iletilerek uçtan uca gecikme süresi iyileştirilir ve yoklama gereksinimi ortadan kaldırılır. Uygulamalarınız birden çok iş öğesini paralel olarak işleyebilir ve karşılık gelen düzenleme, etkinlik veya varlık görevi tamamlandığında yanıtlar zamanlayıcıya geri gönderebilir.
Durum yönetimi
Dayanıklı Görev Zamanlayıcı, durum yönetimi için ayrı bir depolama hesabı olmadan düzenlemelerin ve varlıkların durumunu dahili olarak yönetir. İç durum deposu, Dayanıklı İşlevler ve Dayanıklı Görev SDK'ları ile kullanım için yüksek oranda iyileştirilmiştir, bu da daha iyi dayanıklılık ve güvenilirlik ile gecikme süresini azaltır.
Zamanlayıcı, durumu yönetmek için bellek içi ve kalıcı iç depolamanın bir birleşimini kullanır.
- Bellek içi veri deposu, geçici durum için kullanılır.
- Kalıcı depo, kurtarma ve çok örnekli sorgu işlemleri için kullanılır.
Öne Çıkan Özellikler
Dayanıklı Görev Zamanlayıcı düzenleme çerçevelerinden birini uyguladığınızda, bazı önemli noktalardan yararlanabilirsiniz.
Dayanıklı Görev Zamanlayıcı panosu
Zamanlayıcı kaynağı oluşturulduğunda, ilgili pano kutudan çıkar çıkmaz kullanıma sunulur. Kontrol paneli, tüm orkestrasyonlar ve varlık örneklerine genel bir bakış sunar ve aşağıdakileri yapmanıza olanak tanır:
- Farklı ölçütlere göre hızla filtreleyin.
- Durum, süre, giriş/çıkış gibi bir düzenleme örneği hakkında veri toplayın.
- Alt orkestrasyonlar ve faaliyetler hakkında veri almak için bir örneği derinlemesine inceleyin.
- Orkestrasyon örneğini duraklatma, sonlandırma veya yeniden başlatma gibi yönetim işlemlerini gerçekleştirin.
Panoya erişimin güvenliği kimlik ve rol tabanlı erişim denetimleriyle sağlanır.
Daha fazla bilgi için Dayanıklı Görev Zamanlayıcı panosunu kullanarak orkestrasyonlarda hata ayıklama ve yönetme bölümüne bakın.
Birden çok görev hub'ı
Durum, bir görev hub'ında kalıcı olarak saklanır. Görev hub'ı:
- Orkestrasyon ve varlık örnekleri için mantıksal bir kapsayıcıdır.
- Durum deposunu bölümlendirmenin bir yolunu sağlar.
Tek bir zamanlayıcı örneğiyle, farklı uygulamalar tarafından kullanılabilecek birden çok görev hub'ı oluşturabilirsiniz. Her görev hub'ı kendi izleme panosuna sahip olur. Bir görev hub'ına erişmek için, çağıranın kimliğinin gerekli rol tabanlı erişim denetimi (RBAC) izinlerine sahip olması gerekir.
Birden çok görev hub'ı oluşturmak, bağımsız olarak yönetilebilen farklı iş yüklerini yalıtıyor. Örneğin şunları yapabilirsiniz:
- Her ortam için bir görev hub'ı oluşturun (geliştirme, test, üretim).
- Kuruluşunuzdaki farklı ekipler için görev hub'ları oluşturun.
- Aynı zamanlayıcı örneğini birden çok uygulamada paylaşın.
Zamanlayıcı paylaşımı, birden çok ekibin düzenleme gerektiren senaryoları olduğunda maliyeti iyileştirmenin harika bir yoludur.
Uyarı
Tek bir zamanlayıcı örneğinde birden çok görev hub'ı oluşturabilirsiniz ancak bunlar aynı kaynakları paylaşır. Bir görev hub'ı yoğun bir şekilde yüklenirse, aynı zamanlayıcıdaki diğer görev hub'larının performansını etkileyebilir.
Yerel geliştirme için emülatör
Dayanıklı Görev Zamanlayıcı öykünücüsü, bir Docker kapsayıcısında yerel olarak çalışan zamanlayıcı arka plan sisteminin hafif bir sürümüdür. Bununla şunları yapabilirsiniz:
- uygulamanızı Azure dağıtmadan geliştirin ve test edin.
- Azure üzerinde yaptığınız gibi düzenlemelerinizi ve varlıklarınızı izleyin ve yönetin.
Kurulum yönergeleri için bkz. Dayanıklı Görev Zamanlayıcı Öykünücüsü çalıştırma.
Uyarı
Öykünücü, orkestrasyon ve varlık durumunu dahili olarak yerel bellekte depolar, bu nedenle üretim kullanımı için uygun değildir.
Otomatik temizleme saklama politikaları
Eski orkestrasyon verileri, verimli depolama kullanımı sağlamak için düzenli aralıklarla temizlenmelidir. Dayanıklı Görev Zamanlayıcı için otomatik temizleme özelliği, orkestrasyon örneğini temizleme işlemini otomatik olarak yönetmek için kolaylaştırılmış, yapılandırılabilir bir çözüm sağlar. Dayanıklı Görev Zamanlayıcı için otomatik temizleme saklama politikalarını ayarlama hakkında daha fazla bilgi edinin.
Sınırlamalar ve Dikkat Edilecek Hususlar
Zamanlayıcı kotası:
Faturalama SKU'nuza bağlı olarak kaç zamanlayıcı oluşturabileceğiniz sınırlıdır.
- Ayrılmış SKU kullanılırken zamanlayıcılar abonelik başına bölge başına 25 ile sınırlıdır.
- Tüketim SKU'su kullanılırken zamanlayıcılar abonelik başına bölge başına 10 ile sınırlıdır.
Görev hub'ı kotası:
Faturalama SKU'nuza bağlı olarak kullanabileceğiniz görev hub'ları sınırlıdır.
- Ayrılmış SKU kullanılırken, görev hub'ları abonelik başına bölge başına 25 ile sınırlıdır.
- Tüketim SKU'su kullanılırken, görev hub'ları abonelik başına bölge başına beş ile sınırlıdır.
Daha fazla kota için destekle iletişime geçin.
Maksimum yük boyutu:
Dayanıklı Görev Zamanlayıcı aşağıdaki JSON serileştirilmiş veri türleri için maksimum yük boyutu kısıtlaması içerir:
Veri türü Maksimum boyut Orchestrator girişleri ve çıkışları 1 MB Etkinlik girişleri ve çıkışları 1 MB Dış olay verileri 1 MB Orkestrasyon özel durumu 1 MB Varlık durumu 1 MB Verileriniz bu sınırları aşarsa, kullanılabilir geçici çözümler için bkz. Büyük yük desteği .
Orkestrasyon örneği kimlik uzunluğu:
Orkestrasyon örneği kimlikleri en fazla 100 karakter uzunluğundadır.
- İzin verilen karakterler: Yalnızca yazdırılabilir ASCII (harfler, sayılar, -, _, ., gibi simgeler dahil. 0x20 ile 0x7E arasındaki karakterler)
- Minimum uzunluk: 1 karakter (boş olamaz)
- @ ile başlayan örnek kimlikleri varlıklar için ayrılmıştır
İlgili içerik
- Dayanıklı Görev Zamanlayıcı ile geliştirme
- Hızlı Başlangıç: Dayanıklı Görev Zamanlayıcı kullanmak için bir Dayanıklı İşlevler uygulamasını yapılandırma
- Hızlı Başlangıç: Dayanıklı Görev SDK'ları ile uygulama oluşturma
- Dayanıklı Görev Zamanlayıcı faturalandırma
- Dayanıklı Görev Zamanlayıcı panosu
- Kimlik tabanlı erişimi yapılandırma