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, Azure İşlevleri'da ısınma tetikleyicisi ile nasıl çalışabilirsiniz açıklanmaktadır. Çalışan işlev uygulamasını ölçeklendirmek için bir örnek eklendiğinde bir ısınma tetikleyicisi çağrılır. Isınma tetikleyicisi, işlev uygulamanızın yeni bir örneği başlatıldığında çalışan bir işlev tanımlamanıza olanak tanır. İşlevlerinizin istekleri hemen işlemeye hazır olması için özel bağımlılıkları önceden yüklemek için bir ısınma tetikleyicisi kullanabilirsiniz. Bir ısınma tetikleyicisi için bazı eylemler arasında bağlantıları açma, bağımlılıkları yükleme veya uygulamanız trafik almaya başlamadan önce başka bir özel mantık çalıştırma sayılabilir.
Isınma tetikleyicisi kullanılırken aşağıdaki noktalar geçerlidir:
- İşlev uygulaması başına yalnızca bir ısınma tetikleyicisi işlevi olabilir ve örnek zaten çalıştırıldıktan sonra çağrılamıyor.
- Uygulamanızın ısınma tetikleyicisi olan işlevin adı (büyük/küçük harfe duyarsız) olmalıdır
warmup. - Isınma tetikleyicisi Tüketim planında çalışan uygulamalar tarafından kullanılamaz.
- Isınma tetikleyicisi desteği tüm geliştirme ortamlarında varsayılan olarak sağlanır. Paketi el ile yüklemeniz veya uzantıyı kaydetmeniz gerekmez.
- Isınma tetikleyicisi yalnızca ölçeği genişletme işlemleri sırasında çağrılır, yeniden başlatmalar veya diğer ölçeklendirilmeyen başlatmalar sırasında çağrılmaz. Mantığınızın, ısınma tetikleyicisine bağlı kalmadan tüm gerekli bağımlılıkları yükleyeediğinden emin olun. Yavaş yükleme, bu hedefe ulaşmak için iyi bir desendir.
- Isınma tetikleyicisi tarafından oluşturulan bağımlılıklar uygulamanızdaki diğer işlevlerle paylaşılmalıdır. Daha fazla bilgi edinmek için bkz . Statik istemciler.
- Yerleşik kimlik doğrulaması (Kolay Kimlik Doğrulaması olarak da bilinir) kullanılıyorsa, ısınma tetikleyicisinin çağrılabilmesi için Yalnızca HTTPS etkinleştirilmelidir.
Uzantıyı yükleme
C# sınıf kitaplığı işlev uygulamanız yalıtılmış çalışan işleminde çalıştırıldığında bu NuGet paketini yüklemeniz gerekir. C# uygulamanız konakla birlikte çalışırken ek bir paket yüklemeniz gerekmez.
Önemli
İşlem içi model desteği 10 Kasım 2026'da sona erecektir. Tam destek için uygulamalarınızı yalıtılmış çalışan modeline geçirmenizi kesinlikle öneririz.
Örnek
Go desteği şu anda bu bağlama için mevcut değil.
Aşağıdaki C# modlarından birini kullanarak bir C# işlevi oluşturabilirsiniz:
- Yalıtılmış çalışan modeli: Çalışma zamanından yalıtılmış bir çalışan işleminde çalışan derlenmiş C# işlevi. .NET ve .NET Framework için uzun vadeli destek (LTS) ve LTS olmayan sürümlerde çalışan C# işlevlerini desteklemek için yalıtılmış bir çalışan işlemi gereklidir.
- İşlem içi model: Azure İşlevleri çalışma zamanıyla aynı işlemde çalışan derlenmiş C# işlevi.
- C# betiği: Öncelikle Azure portalında C# işlevleri oluşturduğunuzda kullanılır.
Önemli
İşlem içi model desteği 10 Kasım 2026'da sona erecektir. Tam destek için uygulamalarınızı yalıtılmış çalışan modeline geçirmenizi kesinlikle öneririz.
Aşağıdaki örnekte, uygulamanıza eklendiğinde her yeni örnekte çalışan bir C# işlevi gösterilmektedir.
using Microsoft.Azure.Functions.Worker;
using Microsoft.Extensions.Logging;
namespace SampleApp
{
public static class Warmup
{
[Function(nameof(Warmup))]
public static void Run([WarmupTrigger] object warmupContext, FunctionContext context)
{
var logger = context.GetLogger(nameof(Warmup));
logger.LogInformation("Function App instance is now warm!");
}
}
}
Aşağıdaki örnekte, uygulamanıza her yeni örnek eklendiğinde çalışan bir ısınma tetikleyicisi gösterilmektedir.
@FunctionName("Warmup")
public void warmup( @WarmupTrigger Object warmupContext, ExecutionContext context) {
context.getLogger().info("Function App instance is warm.");
}
Aşağıdaki örnekte, uygulamanıza eklendiğinde her yeni örnekte çalışan bir ısınma tetikleyicisine sahip bir JavaScript işlevi gösterilmektedir:
const { app } = require('@azure/functions');
app.warmup('warmupTrigger', {
handler: (warmupContext, context) => {
context.log('Function App instance is warm.');
},
});
Aşağıdaki örnekte, uygulamanıza eklendiğinde her yeni örnekte çalışan bir ısınma tetikleyicisine sahip bir TypeScript işlevi gösterilmektedir:
import { app, InvocationContext, WarmupContext } from '@azure/functions';
export async function warmupFunction(warmupContext: WarmupContext, context: InvocationContext): Promise<void> {
context.log('Function App instance is warm.');
}
app.warmup('warmup', {
handler: warmupFunction,
});
İşte function.json dosyası:
{
"bindings": [
{
"type": "warmupTrigger",
"direction": "in",
"name": "warmupContext"
}
]
}
PowerShell örnek kodu beklemede.
Aşağıdaki örnekte, function.json dosyasındaki bir ısınma tetikleyicisi ve uygulamanıza eklendiğinde her yeni örnekte çalışan bir Python işlevi gösterilmektedir.
İşlevinizin adı warmup (büyük/küçük harfe duyarsız) olmalıdır ve uygulama başına yalnızca bir ısınma işlevi olabilir.
import logging
import azure.functions as func
app = func.FunctionApp()
@app.warm_up_trigger('warmup')
def warmup(warmup) -> None:
logging.info('Function App instance is warm')
Daha fazla bilgi için bkz. Yapılandırma.
Özellikler
hem işlem içi hem de yalıtılmış çalışan işlemi C# kitaplıkları işlevi tanımlamak için özniteliğini kullanırWarmupTrigger. C# betiği bunun yerine bir function.json yapılandırma dosyası kullanır.
WarmupTrigger işlevini tanımlamak için özniteliğini kullanın. Bu özniteliğin parametresi yok.
Ek Açıklamalar
Isınma tetikleyicileri ek açıklama gerektirmez. Ek açıklama için warmup bir ad FunctionName (büyük/küçük harfe duyarsız) kullanmanız yeter.
Yapılandırma
Yapılandırma
Aşağıdaki tabloda, function.json dosyasında ayarladığınız bağlama yapılandırma özellikleri açıklanmaktadır.
| function.json özelliği | Açıklama |
|---|---|
| türü | Gerekli - olarak warmupTriggerayarlanmalıdır. |
| yön | Gerekli - olarak inayarlanmalıdır. |
| ad | Gerekli - işlev kodunda kullanılan değişken adı.
name
warmupContext bağlama parametresi için bir önerilir. |
Tam örnekler için Örnek bölümüne bakın.
Kullanım
C# dilinde bir ısınma işlevi kullanmak için aşağıdaki önemli noktalar geçerlidir:
- İşleviniz özniteliği kullanılarak
warmupadlandırılmalıdırFunction(büyük/küçük harfe duyarsız). - Dönüş değeri özniteliği gerekli değildir.
-
Microsoft.Azure.Functions.Worker.Extensions.WarmupPaketi kullanma - bir nesne örneğini işleve geçirebilirsiniz.
İşleviniz ek açıklama kullanılarak warmup adlandırılmalıdır FunctionName (büyük/küçük harfe duyarsız).
function.json işlev türü olarak warmupTriggerayarlanmalıdır.