Aracılığıyla paylaş


Azure İşlevleri çalışma zamanı sürümlerine genel bakış

Azure İşlevleri şu anda çalışma zamanı ana bilgisayarının iki sürümünü desteklemektedir. Aşağıdaki tabloda şu anda desteklenen çalışma zamanı sürümleri, destek düzeyleri ve bunların ne zaman kullanılması gerektiği açıklanmaktadır:

Sürüm Destek düzeyi Açıklama
4.x Georgia Tüm dillerdeki işlevler için önerilen çalışma zamanı sürümü.Desteklenen dil sürümleri'ne göz atın.
1.x GA (destek 14 Eylül 2026'da sona eriyor) Yalnızca .NET Framework kullanması gereken C# uygulamaları için desteklenir. Bu sürüm bakım modundadır ve iyileştirmeler yalnızca sonraki sürümlerde sağlanır. 1.x sürümü desteği 14 Eylül 2026'da sona erecektir. Uygulamalarınızı .NET Framework 4.8, .NET 8 ve .NET 9 destekleyen 4.x sürümüne geçirmenizi kesinlikle öneririz.

Önemli

13 Aralık 2022 itibarıyla Azure İşlevleri çalışma zamanının 2.x ve 3.x sürümlerinde çalışan işlev uygulamaları genişletilmiş desteğin sonuna ulaşmıştır. Daha fazla bilgi için bkz . Kullanımdan kaldırılacak sürümler.

Bu makalede desteklenen sürümler arasındaki farklardan bazıları, her sürümü nasıl oluşturabileceğiniz ve işlevlerinizin çalıştırıldığı sürümün nasıl değiştirildiği açıklanır.

Destek düzeyleri

İki destek düzeyi vardır:

  • Genel kullanıma açık (GA) - Üretim kullanımı için tam olarak desteklenir ve onaylanmıştır.
  • Önizleme - Henüz desteklenmiyor, ancak gelecekte GA durumuna ulaşması bekleniyor.

Diller

İşlev uygulamasındaki tüm işlevlerin aynı dili paylaşması gerekir. Uygulamayı oluştururken işlev uygulamanızda işlevlerin dilini seçersiniz. İşlev uygulamanızın dili FUNCTIONS_WORKER_RUNTIME ayarında tutulur ve mevcut işlevler olduğunda değiştirilemez.

Makalenin üst kısmında tercih ettiğiniz geliştirme dilini seçtiğinizden emin olun.

Aşağıdaki tabloda, Azure İşlevleri tarafından desteklenen .NET sürümleri gösterilmektedir.

Desteklenen .NET sürümü hem İşlevler çalışma zamanı sürümünüz hem de seçtiğiniz yürütme modeline bağlıdır:

İşlev kodunuz ayrı bir .NET çalışan işleminde çalışır. Desteklenen .NET ve .NET Framework sürümleriyle kullanın. Daha fazla bilgi edinmek için bkz. Yalıtılmış çalışan modelinde C# Azure İşlevlerini çalıştırma kılavuzu.

Desteklenen sürüm Destek düzeyi Beklenen destek sonu tarihi
.NET 9 Georgia 12 Mayıs 2026, Saat 20:00
.NET 8 Georgia 10 Kasım 2026
.NET Framework 4.8.1 Georgia Politikaya bakın

.NET 6 daha önce yalıtılmış çalışan modelinde destekleniyordu ancak 12 Kasım 2024'te resmi desteğin sonuna ulaştı.

.NET 7 daha önce yalıtılmış çalışan modelinde destekleniyordu ancak 14 Mayıs 2024'te resmi desteğin sonuna ulaştı.

Daha fazla bilgi için bkz. Yalıtılmış çalışan modelinde C# Azure İşlevlerini çalıştırma kılavuzu.

Aşağıdaki tabloda Java işlevleri için desteklenen dil sürümleri gösterilmektedir.

Desteklenen sürüm Destek düzeyi Desteklenme süresi sonuna kadar
Java 21 Georgia Sürüm ve hizmet yol haritasına bakın.
Java 17 Georgia Sürüm ve hizmet yol haritasına bakın.
Java 11 Georgia Sürüm ve hizmet yol haritasına bakın.
Java 8 Georgia Bu Temurin destek sayfasına bakın.

Java işlevlerini geliştirme ve çalıştırma hakkında daha fazla bilgi için bkz. java geliştirici kılavuzu Azure İşlevleri.

Aşağıdaki tabloda, Node.js işlevleri için desteklenen dil sürümleri gösterilmektedir.

Desteklenen sürüm Destek düzeyi Beklenen destek sonu tarihi
Node.js 22 GA (Linux)
Önizleme (Windows)
30 Nisan 2027
Node.js 20 Georgia 30 Nisan 2026

TypeScript, JavaScript'e dönüştürme yoluyla desteklenir. Daha fazla bilgi için Azure İşlevleri Node.js geliştirici kılavuzuna bakın.

Aşağıdaki tabloda PowerShell işlevleri için desteklenen dil sürümü gösterilmektedir.

Desteklenen sürüm Destek düzeyi Beklenen destek sonu tarihi
PowerShell 7.4 Georgia 10 Kasım 2026

Daha fazla bilgi için bkz. PowerShell geliştirici kılavuzu Azure İşlevleri.

Aşağıdaki tabloda Python işlevleri için desteklenen dil sürümleri gösterilmektedir.

Desteklenen sürüm Destek düzeyi Beklenen destek sonu tarihi
Python 3.12 Georgia Ekim 2028
Python 3.11 Georgia Ekim 2027
Python 3.10 Georgia Ekim 2026
Python 3.9 Georgia Ekim 2025

Daha fazla bilgi için bkz. Azure İşlevleri Python geliştirici kılavuzu.

Dil desteğinde planlanan değişiklikler hakkında bilgi için bkz. Azure yol haritası güncelleştirmeleri.

İşlevler çalışma zamanının daha önce desteklenen sürümlerinin dil sürümleri hakkında bilgi için bkz . Kullanımdan kaldırılacak çalışma zamanı sürümleri.

Belirli bir sürümde çalıştırma

Azure'da yayımlanan uygulamalar tarafından kullanılan İşlevler çalışma zamanının sürümü, uygulama ayarı tarafından FUNCTIONS_EXTENSION_VERSION dikte edilir. Bazı durumlarda ve belirli diller için diğer ayarlar uygulanabilir.

Varsayılan olarak, Azure portalında, Azure CLI tarafından veya Visual Studio araçlarından oluşturulan işlev uygulamaları 4.x sürümüne ayarlanır. Gerekirse bu sürümü değiştirebilirsiniz. İşlev uygulamanızı oluşturduktan sonra ancak herhangi bir işlev eklemeden önce çalışma zamanı sürümünü yalnızca 1.x sürümüne düşürebilirsiniz. Mevcut işlevleri olan uygulamalarda bile daha sonraki bir ana sürüme güncelleştirmeye izin verilir.

Mevcut işlev uygulamalarını geçirme

Uygulamanızın mevcut işlevleri olduğunda, daha sonraki bir ana çalışma zamanı sürümüne geçmeden önce önlem almanız gerekir. Aşağıdaki makaleler, dile özgü uyumluluk bozan değişiklikler de dahil olmak üzere ana sürümler arasındaki uyumluluk bozan değişiklikleri ayrıntılı olarak açıklar. Ayrıca, mevcut işlev uygulamanızın başarılı bir şekilde geçirilmesi için size adım adım yönergeler sağlar.

Azure'da uygulamaların sürümünü değiştirme

Aşağıdaki ana çalışma zamanı sürüm değerleri kullanılır:

Değer Çalışma zamanı hedefi
~4 4.x
~1 1.x

Önemli

Bu uygulama ayarını rastgele değiştirmeyin, çünkü diğer uygulama ayarlarında ve işlev kodunuzda değişiklikler yapmanız gerekebilir. Mevcut işlev uygulamaları için geçiş yönergelerini izleyin.

Belirli bir küçük sürüme sabitleme

İşlev uygulamanızın en son ana sürümde çalışırken karşılaşabileceği sorunları çözmek için uygulamanızı geçici olarak belirli bir ikincil sürüme sabitlemeniz gerekir. Sabitleme, uygulamanızın en son ana sürümde sorunsuz çalışabilmesi için size zaman tanır. Küçük sürüme sabitleme yöntemi Windows ve Linux arasında farklılık gösterir. Daha fazla bilgi edinmek için bkz. Azure İşlevleri çalışma zamanı sürümlerini hedefleme.

Eski ikincil sürümler, İşlevler'den düzenli aralıklarla kaldırılır. Belirli eski ikincil sürümlerin kaldırılması da dahil olmak üzere Azure İşlevleri sürümlerle ilgili en son haberler için Azure Uygulaması Hizmet duyurularını izleyin.

En düşük uzantı sürümleri

Bağlama uzantısı sürümleri ile İşlevler çalışma zamanı sürümü arasında teknik olarak bir bağıntı yoktur. Ancak, 4.x sürümünden başlayarak İşlevler çalışma zamanı tüm tetikleyici ve bağlama uzantıları için en düşük sürümü zorlar.

Gerekli en düşük sürüme uymayan bir paket hakkında uyarı alırsanız, bu NuGet paketini normalde yaptığınız gibi en düşük sürüme güncelleştirmeniz gerekir. İşlevler v4.x'te kullanılan uzantılar için en düşük sürüm gereksinimleri , bağlı yapılandırma dosyasında bulunabilir.

C# script için host.json uzantı paketi referansını aşağıdaki gibi güncelleyin:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Uzantı paketi sürümleri ile İşlevler çalışma zamanı sürümü arasında teknik olarak bir bağıntı yoktur. Ancak, 4.x sürümünden başlayarak İşlevler çalışma zamanı, uzantı paketleri için en düşük sürümü zorunlu bırakır.

Uzantı paketi sürümünüzün gerekli en düşük sürüme uymadığı konusunda bir uyarı alırsanız, host.json mevcut uzantı paketi başvurunuzu aşağıdaki gibi güncelleştirin:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Uzantı paketleri hakkında daha fazla bilgi edinmek için bkz. Uzantı paketleri.

Kullanımdan kaldırılacak sürümler

Önemli

Azure İşlevleri çalışma zamanının 1.x sürümü için destek 14 Eylül 2026'da sona erecektir. Tam destek için uygulamalarınızı 4.x sürümüne geçirmenizi kesinlikle öneririz.

İşlevler çalışma zamanının bu sürümleri 13 Aralık 2022'de genişletilmiş desteğin sonuna ulaştı.

Sürüm Geçerli destek düzeyi Önceki destek düzeyi
3.x Destek kapsamı dışında Georgia
2.x Destek kapsamı dışında Georgia

En kısa sürede, tam destek almak için uygulamalarınızı sürüm 4.x'e geçirmeniz gerekir. Dile özgü tam geçiş yönergeleri için bkz. Uygulamaları Azure İşlevleri sürüm 4.x'e geçirme.

2.x ve 3.x sürümlerini kullanan uygulamalar CI/CD DevOps işlem hattınızdan oluşturulmaya ve dağıtılmaya devam edebilir ve mevcut tüm uygulamalar hataya neden olan değişiklikler olmadan çalışmaya devam eder. Ancak uygulamalarınız yeni özellikler, güvenlik düzeltme ekleri ve performans iyileştirmeleri için uygun değildir. yalnızca uygulamalarınızı 4.x sürümüne yükseltdikten sonra ilgili hizmet desteği alabilirsiniz.

Çekirdek bağımlılık olan .NET Core 3.1 desteğinin sona ermesi nedeniyle 2.x ve 3.x sürümleri artık desteklenmiyor. Bu gereksinim , Azure İşlevleri tarafından desteklenen tüm dilleri etkiler.

Yerel olarak geliştirilen uygulama sürümleri

Hedeflenen sürümleri yerel olarak değiştirmek için işlev uygulamalarında aşağıdaki güncelleştirmeleri yapabilirsiniz.

Visual Studio çalışma zamanı sürümleri

Visual Studio'da proje oluştururken çalışma zamanı sürümünü seçersiniz. Visual Studio için Azure İşlevleri araçları iki ana çalışma zamanı sürümünü destekler. Proje ayarlarına göre hata ayıklama ve yayımlama sırasında doğru sürüm kullanılır. Sürüm ayarları aşağıdaki özelliklerde .csproj dosyasında tanımlanır:

<TargetFramework>net8.0</TargetFramework>
<AzureFunctionsVersion>v4</AzureFunctionsVersion>

Yalıtılmış çalışan modelini kullanıyorsanız hedef çerçeve olarak , net8.0veya net6.0 seçebilirsiniznet48. için net9.0 kullanmayı da seçebilirsiniz. İşlem içi modeli kullanıyorsanız, net8.0 veya net6.0 öğesini seçebilirsiniz ve uzantıyı Microsoft.NET.Sdk.Functions en azından 4.4.0 olarak ayarlamanız gerekir.

.NET 7 daha önce yalıtılmış çalışan modelinde destekleniyordu ancak 14 Mayıs 2024'te resmi desteğin sonuna ulaştı.

Visual Studio Code ve Azure İşlevleri Temel Araçları

Azure İşlevleri Temel Araçları , komut satırı geliştirme için ve ayrıca Visual Studio Code için Azure İşlevleri uzantısı tarafından kullanılır. Daha fazla bilgi için bkz. Azure İşlevleri Temel Araçları'nı yükleme.

Visual Studio Code geliştirmesi için azureFunctions.projectRuntime , kullanıcı ayarını yüklü araçların sürümüyle eşleşecek şekilde güncelleştirmeniz de gerekebilir. Bu ayar, işlev uygulaması oluşturma sırasında kullanılan şablonları ve dilleri de güncelleştirir.

Bağlamalar

2.x sürümünden başlayarak çalışma zamanı şu avantajları sunan yeni bir bağlama genişletilebilirlik modeli kullanır:

  • Microsoft dışı bağlama uzantıları için destek.

  • Çalışma zamanı ve bağıntıları ayırma. Bu değişiklik, bağlama uzantılarının bağımsız olarak sürümüne dönüştürülmesini ve yayımlanmasını sağlar. Örneğin, temel alınan SDK'nın daha yeni bir sürümünü kullanan bir uzantının sürümüne yükseltmeyi tercih edebilirsiniz.

  • Çalışma zamanı tarafından yalnızca kullanılmakta olan bağlamların bilindiği ve yüklendiği daha hafif bir yürütme ortamı.

HTTP ve zamanlayıcı tetikleyicileri dışında, tüm bağlamaların işlev uygulaması projesine açıkça eklenmesi veya portala kaydedilmesi gerekir. Daha fazla bilgi için bkz. Azure İşlevleri bağlama ifadesi desenleri.

Bu tabloda, Azure İşlevleri çalışma zamanının ana sürümlerinde desteklenen bağlamalar gösterilmektedir:

Türü 1.x1 2.x ve üzeri2 Tetikleyici Veri Girişi Çıktı
blob depolama
Azure Cosmos DB
Azure Veri Gezgini
Azure SQL
Dapr4
Event Grid
Event Hubs
HTTP ve webhooks
IoT Hub
Kafka3
Mobile Apps
Notification Hubs
Kuyruk depolama
Redis
RabbitMQ3
SendGrid
Servis Veri Yolu
SignalR
Tablo depolama
Zamanlayıcı
Twilio

Notlar:

  1. Azure İşlevleri çalışma zamanının 1.x sürümü için destek 14 Eylül 2026'da sona erecektir. Tam destek için uygulamalarınızı 4.x sürümüne geçirmenizi kesinlikle öneririz.
  2. Sürüm 2.x çalışma zamanından itibaren HTTP ve Zamanlayıcı dışındaki tüm bağlamaların kaydedilmesi gerekir. Bakınız Bağlama uzantılarını kaydetme.
  3. Tetikleyiciler Tüketim planında desteklenmez. Çalışma zamanı temelli tetikleyiciler gerektirir.
  4. Yalnızca Kubernetes, IoT Edge ve diğer kendi kendine barındırılan modlarda desteklenir.

İşlev uygulaması zaman aşımı süresi

İşlev uygulamasındaki işlevlerin zaman aşımı süresi, host.jsonfunctionTimeoutözelliği tarafından tanımlanır. Bu özellik özellikle işlev yürütmeleri için geçerlidir. Tetikleyici işlev yürütmeyi başlattığında, işlevin zaman aşımı süresi içinde döndürülmesi/yanıt vermesi gerekir. Zaman aşımlarını önlemek için sağlam işlevler yazmak önemlidir. Daha fazla bilgi için bkz. Azure İşlevleri performansını ve güvenilirliğini geliştirme.

Aşağıdaki tabloda belirli planlar için varsayılan ve en yüksek değerler (dakika cinsinden) gösterilmektedir:

Tasarı Varsayılan En Fazla1
Esnek Tüketim planı 30 Sınırsız2
Premium plan 304 Sınırsız2
Özel plan 304 Sınırsız3
Container Apps 30 Sınırsız5
Tüketim planı 5 10
  1. İşlev uygulaması zaman aşımı ayarından bağımsız olarak 230 saniye, HTTP ile tetiklenen bir işlevin isteğe yanıt vermesi için gereken en uzun süredir. Bunun nedeni Azure Load Balancer'ın varsayılan boşta kalma süresi aşımıdır. Daha uzun işleme süreleri için, zaman uyumsuz Dayanıklı İşlevler desenini kullanmayı veya asıl işi erteleyip anında yanıt döndürmeyi göz önünde bulundurun.
  2. Yürütme zaman aşımı süresi için herhangi bir üst sınır yoktur. Ancak, bir işlev yürütmesine verilen avans süresi Esnek Tüketim ve Premium planları için ölçek küçültme sırasında 60 dakikadır ve platform güncellemeleri sırasında 10 dakikalık bir avans süresi verilir.
  3. App Service planının Always On olarak ayarlanmasını gerektirir. Platform güncelleştirmeleri sırasında 10 dakikalık bir yetkisiz kullanım süresi verilir.
  4. İşlevler konak çalışma zamanının 1.x sürümü için varsayılan zaman aşımı sınırsızdır.
  5. En az çoğaltma sayısı sıfır olarak ayarlandığında, varsayılan zaman aşımı uygulamada kullanılan belirli tetikleyicilere bağlıdır.

Daha fazla bilgi için aşağıdaki kaynaklara bakın: