Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
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 Guide untuk menjalankan Azure Functions C# dalam proses pekerja yang terisolasi.
Tambahkan ekstensi ke proyek Anda dengan menginstal paket NuGet this.
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 extension. Untuk informasi selengkapnya, lihat bundel ekstensi Azure Functions.
Memperbarui paket
Tambahkan paket Anotasi
<dependency>
<groupId>com.microsoft.azure.functions</groupId>
<artifactId>azure-functions-java-library-redis</artifactId>
<version>1.0.0</version>
</dependency>
Redis connection string
Azure pemicu dan pengikatan 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 connection string dengan nama yang diteruskan ke parameter Connection.
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
- Identitas terkelola yang ditetapkan sistem
- Koneksi string
- Prinsipal layanan
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 Gunakan Microsoft Entra ID 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>"