Desain untuk solusi Azure Functions

Selesai

Azure Functions adalah platform aplikasi tanpa server. Functions digunakan ketika Anda ingin menjalankan sepotong kecil kode di cloud, tanpa mengkhawatirkan infrastruktur.

Hal-hal yang perlu diketahui tentang Azure Functions

Mari kita tinjau beberapa manfaat dan skenario Azure Functions yang menjadikannya solusi komputasi yang bagus untuk membangun beban kerja baru.

Flowchart for selecting Azure Functions solutions to build new workloads.

  • Azure Functions menyediakan skalabilitas intrinsik. Anda hanya dikenakan biaya untuk sumber daya yang Anda gunakan.

  • Dengan Azure Functions, Anda dapat menulis kode fungsi dalam bahasa pilihan Anda.

  • Azure Functions mendukung komputasi sesuai permintaan dengan dua cara signifikan:

    • Azure Functions memungkinkan Anda mengimplementasikan logika sistem Anda ke dalam blok kode yang tersedia dengan mudah. Blok kode ini (fungsi) dapat berjalan kapan pun Anda perlukan untuk menanggapi peristiwa penting.

    • Saat permintaan meningkat, Azure Functions memenuhi permintaan dengan sumber daya dan instans fungsi sebanyak yang diperlukan. Ketika permintaan selesai, setiap sumber daya dan instans aplikasi tambahan hilang secara otomatis.

  • Azure Functions adalah solusi ideal untuk menangani tindakan tertentu yang dapat ditentukan yang dipicu oleh peristiwa. Fungsi dapat memproses panggilan API dan menyimpan data yang diproses di Azure Cosmos DB. Setelah transfer data terjadi, fungsi lain dapat memicu pemberitahuan.

    Diagram that shows how Azure Functions responds to API calls and outputs data to Azure Notification Hubs.

Hal-hal yang perlu dipertimbangkan saat menggunakan Azure Functions

Mari kita lihat beberapa praktik terbaik untuk menggunakan Azure Functions. Saat Anda mempertimbangkan saran ini, pikirkan keuntungan menggunakan Azure Functions dalam infrastruktur Tailwind Traders.

  • Pertimbangkan fungsi jangka panjang. Hindari fungsi besar yang berjalan lama yang dapat menyebabkan masalah waktu habis yang tidak terduga. Bila memungkinkan, refaktor fungsi besar menjadi set fungsi yang lebih kecil yang bekerja sama dan mengembalikan respon lebih cepat. Batas waktu default adalah 300 detik untuk fungsi Paket Konsumsi, dan 30 menit untuk paket lain.

  • Pertimbangkan fungsi tahan lama. Atasi masalah waktu habis dalam konfigurasi Anda dengan fungsi tahan lama dan set fungsi yang lebih kecil. Fungsi tahan lama memungkinkan Anda menulis fungsi berstatus. Di balik layar, fungsi mengelola status aplikasi, titik pemeriksaan, dan memulai ulang. Contoh pola aplikasi untuk fungsi tahan lama adalah penautan fungsi. Penautan fungsi menjalankan urutan fungsi dalam urutan tertentu. Output dari satu fungsi diterapkan pada input fungsi lain.

  • Pertimbangkan performa dan penskalakan. Rencanakan cara mengelompokkan fungsi dengan profil beban yang berbeda. Pertimbangkan skenario di mana Anda memiliki dua fungsi. Satu fungsi memproses ribuan pesan antrean dan memiliki persyaratan memori yang rendah. Fungsi lain hanya dipanggil sesekali tetapi memiliki persyaratan memori yang tinggi. Dalam skenario ini, Anda mungkin ingin menyebarkan aplikasi fungsi terpisah, di mana setiap fungsi memiliki sekumpulan sumber dayanya sendiri. Sumber daya terpisah berarti Anda dapat menskalakan fungsi secara independen.

  • Pertimbangkan fungsi defensif. Desain fungsi Anda untuk menangani pengecualian. Layanan hilir, pemadaman jaringan, atau batas memori dapat menyebabkan fungsi gagal. Tulis fungsi Anda sehingga dapat dilanjutkan jika kegagalan terjadi.

  • Pertimbangkan untuk tidak berbagi akun penyimpanan. Maksimalkan performa dengan menggunakan akun penyimpanan terpisah untuk setiap aplikasi fungsi. Saat Anda membuat aplikasi fungsi, kaitkan dengan akun penyimpanan unik. Menggunakan akun penyimpanan unik penting jika fungsi Anda menghasilkan volume transaksi penyimpanan yang tinggi.

Aplikasi Bisnis

Luangkan beberapa menit untuk membaca tentang praktik terbaik Azure Functions lainnya.

Anda bisa mendapatkan lebih banyak ide tentang cara menggunakan Azure Functions dengan memeriksa halaman sampel kode.