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.
Bu makalede, Python 3.13 ile başlayan Azure İşlevleri tarafından sunulan önemli Python özellik güncelleştirmeleri özetlenmektedir. Bu değişiklikler arasında çalışma zamanı sürümü yönetimi, performans geliştirmeleri ve kaldırılan birkaç özellik bulunur.
Python çalışma zamanı sürüm denetimi
Python 3.13'den başlayarak İşlevler, uygulamanız tarafından kullanılan İşlevler Python çalışma zamanının belirli sürümlerini hedeflemenizi sağlayan yeni bir kabul etme özelliği olan çalışma zamanı sürüm denetimini kullanıma sunmıştır.
Sürüm denetimi etkinleştirilmeden, uygulamanız İşlevler tarafından yönetilen Python çalışma zamanının varsayılan sürümünde çalışmaya devam eder. Bunun yerine, uygulamanızı Python çalışma zamanının belirli bir sürümüne sabitleyebilmek içinrequirements.txtdosyanızı değiştirerek en son yayımlanan sürümü, önceden yayınlanmış bir sürümü istemeniz gerekir.
requirements.txt dosyanıza Python çalışma zamanı paketine başvuru ekleyerek çalışma zamanı sürümü denetimini etkinleştirirsiniz; burada pakete atanan değer kullanılan çalışma zamanı sürümünü belirler.
requirements.txt eklediğiniz belirli başvuru, Python programlama modelinize bağlıdır ve bu da şu değerlerden biri olabilir:
| Model sürümü | Paket adı |
|---|---|
| v2 | azure-functions-runtime |
| v1 | azure-functions-runtime-v1 |
Bu tablo, requirements.txt dosyanızdaki bu ayarın sürüm değerine göre sürüm oluşturma davranışını gösterir:
| Sürüm | Örnek | Davranış |
|---|---|---|
| Değer kümesi yok | azure-functions-runtime |
Python 3.13+ uygulamanız İşlevler Python çalışma zamanının en son kullanılabilir sürümünde çalışır. Uygulamanız en son kararlı çalışma zamanı güncelleştirmelerini otomatik olarak aldığından, bu seçenek platform iyileştirmeleri ve özellikleriyle güncel kalmak için en iyisidir. |
| Belirli bir sürüme sabitlenmiş | azure-functions-runtime==1.2.0 |
Python 3.13+ uygulamanız sabitlenmiş çalışma zamanı sürümünde kalır ve otomatik güncelleştirmeleri almaz. Bunun yerine, çalışma zamanındaki yeni özelliklerden, düzeltmelerden ve geliştirmelerden yararlanmak için sabitlenmiş sürümünüzü el ile güncelleştirmeniz gerekir. Sabitleme, kararlılığın ve öngörülebilirliğin önemli olduğu kritik üretim iş yükleri için önerilir. Sabitleme ayrıca geliştirme sırasında uygulamanızı önceden yayınlanmış çalışma zamanı sürümlerinde test etmenizi sağlar. |
| Paket başvurusu yok | Yok | öğesini ayarlamayarak azure-functions-runtimePython 3.13+ uygulamanız, python çalışma zamanının en son yayınlanan sürümün arkasındaki varsayılan bir sürümde çalışır. Güncelleştirmeler, İşlevler tarafından düzenli aralıklarla yapılır. Bu seçenek kararlılık ve geniş uyumluluk sağlar. Ancak, en yeni özelliklere ve düzeltmelere erişim, varsayılan sürüm güncelleştirilene kadar geciktirilir. |
Python 3.13+ uygulamanızla çalışma zamanı sürüm denetimini kullanırken şu noktaları göz önünde bulundurun:
- Herhangi bir üretim uygulamasını yayın öncesi (alfa, beta veya geliştirme) çalışma zamanı sürümlerine sabitlemekten kaçının.
- Uygulamanızın Python çalışma zamanına uygulanan değişikliklerden haberdar olmak veya sabitlenmiş bir sürümün ne zaman güncelleştirileceğini belirlemek için Python çalışma zamanı sürüm notlarını düzenli olarak gözden geçirin.
Python 3.13'te sunulan diğer değişiklikler ve iyileştirmeler
Python 3.13, performans ve güvenilirliği artıran ve çalışma zamanı davranışlarını başka şekilde etkileyen İşlevler için çeşitli geliştirmeler sunar:
Bağımlılık yalıtımı artık varsayılan olarak etkinleştirildi
Uygulamalarınız artık tam bağımlılık yalıtımından yararlanabilir; yani uygulamanız veya grpciogibi Python çalışanı tarafından da kullanılan bir bağımlılık içerdiğinde, Python çalışma zamanı dahili olarak azure-functions farklı bir sürüm kullanıyor olsa bile uygulamanızın kendi sürümünü kullanabileceği anlamına gelir.
Bu yalıtım, sürüm çakışmalarını önler ve özel paketlerle uyumluluğu geliştirir.
Geliştirilmiş soğuk başlangıç performansı
Python 3.13, Python 3.11 ile karşılaştırıldığında soğuk başlangıç süresinde ölçülebilir bir azalma sağlar ve bu da uygulamanın daha hızlı başlatılmasına neden olur.
Destekle Orjson daha hızlı JSON işleme
İşlevler artık Rust ile yazılmış yüksek performanslı bir JSON kitaplığının Orjsonotomatik kullanımını desteklemektedir. Uygulamanızın bağımlılıklarına dahil edildiğinde Orjson , çalışma zamanı bunu kodunuzda herhangi bir değişiklik yapmanıza gerek kalmadan JSON serileştirme ve seri durumdan çıkarma için otomatik olarak kullanır.
kullanımı Orjson , HTTP API çağrıları ve olay işleme gibi JSON yoğunluklu iş yükleri için hem daha düşük gecikme süresi hem de daha yüksek aktarım hızı sağlayabilir. Geriye dönük uyumluluğu sağlamak için, standart json kitaplık kullanılabilir olmadığında Orjson kullanılır.
HTTP akışı için basitleştirilmiş kabul etme
-
HTTP Akış özelliği artık uygulama ayarınızda veya diğer yapılandırmalarda herhangi bir değişiklik gerektirmeden kullanılabilir. yine de işlev düzeyinde kabul etmeniz gerekir, ancak artık özelliği kullanmak için ayarı eklemeniz
PYTHON_ENABLE_INIT_INDEXINGgerekmez.
Python'da özellik desteği kaldırıldı
Bu özellikler artık Python 3.13 ve sonraki sürümleri kullanılırken İşlevler tarafından desteklenmiyor:
- Çalışan Uzantıları: Özel çalışan uzantıları Python 3.13+ çalışma zamanıyla uyumlu değildir. Uygulamanız bu uzantılara güveniyorsa, desteklenen alternatifleri kullanarak yeniden değerlendirmeniz veya bu uzantıya geçmeniz gerekir.
- Paylaşılan Bellek: Python 3.13'den başlayarak büyük yük iyileştirmesi için kullanılan paylaşılan bellek özelliği kullanılamaz. Varsayılan olarak, tüm iletişim artık gRPC tabanlı mesajlaşmayı kullanır.