Bagikan melalui


Gambaran umum fungsi Azure untuk Azure Redis

Artikel ini menjelaskan cara menggunakan Azure Managed Redis atau Azure Cache for Redis dengan Azure Functions untuk membuat arsitektur tanpa server dan berbasis peristiwa yang dioptimalkan.

Azure Functions menyediakan model pemrograman berbasis peristiwa di mana pemicu dan pengikatan adalah fitur utama. Dengan Azure Functions, Anda dapat dengan mudah membangun aplikasi tanpa server berbasis peristiwa. Layanan Azure Redis (Azure Managed Redis dan Azure Cache for Redis) menyediakan serangkaian blok penyusun dan praktik terbaik untuk membangun aplikasi terdistribusi, termasuk layanan mikro, manajemen status, pub/sub olahpesan, dan banyak lagi.

Azure Redis dapat digunakan sebagai pemicu untuk Azure Functions, memungkinkan Anda memulai alur kerja tanpa server. Fungsionalitas ini bisa sangat berguna dalam arsitektur data seperti cache tulis di belakang, atau arsitektur berbasis peristiwa apa pun.

Anda dapat mengintegrasikan Azure Redis dan Azure Functions untuk membangun fungsi yang bereaksi terhadap peristiwa dari Azure Redis atau sistem eksternal.

Perbuatan Arah
Pemicu pada sub pesan pub Redis Pemicu
Pemicu pada daftar Redis Pemicu
Pemicu pada aliran Redis Pemicu
Membaca nilai yang di-cache Input
Menulis nilai ke cache Output

Cakupan ketersediaan untuk pemicu dan pengikatan fungsi

Tingkat Azure Cache for Redis (Dasar, Standar, Premium, Enterprise, Enterprise Flash) Azure Managed Redis (Memori Dioptimalkan, Dasar, Komputasi Dioptimalkan, Flash Dioptimalkan)
Pub/Sub Ya Ya
Daftar Ya Ya
Aliran Ya Ya
Pengikatan Ya Ya

Penting

Pemicu Redis saat ini hanya didukung untuk fungsi yang berjalan dalam paket Elastic Premium atau paket App Service khusus.

Menginstal ekstensi

Fungsi berjalan dalam proses pekerja C# terisolasi. Untuk mempelajari selengkapnya, lihat Panduan untuk menjalankan C# Azure Functions dalam proses pekerja yang terisolasi.

Tambahkan ekstensi ke proyek Anda dengan memasang Paket NuGet ini.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Redis

Memasang bundel

Agar dapat menggunakan ekstensi pengikatan ini di aplikasi Anda, pastikan file host.json di akar proyek Anda berisi referensi ini extensionBundle :

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

Dalam contoh ini, version nilai [4.0.0, 5.0.0) menginstruksikan host Functions untuk menggunakan versi bundel yang setidaknya 4.0.0 tetapi kurang dari 5.0.0, yang mencakup semua versi potensial 4.x. Notasi ini secara efektif mempertahankan aplikasi Anda pada versi minor terbaru yang tersedia dari bundel ekstensi v4.x.

Jika memungkinkan, Anda harus menggunakan versi utama bundel ekstensi terbaru dan memungkinkan runtime untuk secara otomatis mempertahankan versi minor terbaru. Anda dapat melihat konten bundel terbaru pada halaman rilis bundel ekstensi. Untuk informasi selengkapnya, lihat Bundel ekstensi Azure Functions.

Memperbarui paket

Tambahkan paket Anotasi Java Redis Azure Functions ke proyek Anda dengan memperbarui pom.xml file untuk menambahkan dependensi ini:

<dependency>
  <groupId>com.microsoft.azure.functions</groupId>
  <artifactId>azure-functions-java-library-redis</artifactId>
  <version>1.0.0</version>
</dependency>

Redis string koneksi

Pemicu dan pengikatan Azure Redis memiliki properti yang diperlukan yang menunjukkan pengaturan aplikasi atau nama koleksi yang berisi informasi koneksi cache. Pemicu atau pengikatan Redis mencari variabel lingkungan yang memegang string koneksi dengan nama yang diteruskan ke Connection parameter .

Dalam pengembangan lokal, Connection dapat didefinisikan menggunakan file local.settings.json . Saat disebarkan ke Azure, pengaturan aplikasi dapat digunakan.

Saat menyambungkan ke instans cache dengan fungsi Azure, Anda dapat menggunakan salah satu jenis koneksi ini dalam penyebaran Anda:

Identitas terkelola yang ditetapkan pengguna harus dikaitkan dengan aplikasi fungsi Anda, dan identitas tersebut juga harus diberikan izin eksplisit di layanan cache Anda. Untuk informasi selengkapnya, lihat Menggunakan ID Microsoft Entra untuk autentikasi cache.

Contoh-contoh ini menunjukkan nama kunci dan nilai pengaturan aplikasi yang diperlukan untuk terhubung ke setiap layanan cache berdasarkan jenis autentikasi klien, dengan asumsi bahwa Connection properti dalam pengikatan diatur ke Redis.

"Redis__redisHostName": "<cacheName>.<region>.redis.azure.net",
"Redis__principalId": "<principalId>",
"Redis__clientId": "<clientId>"