Cara kerja Azure Functions
- 3 menit
Di sini, Anda mempelajari tentang bagaimana Anda dapat menggunakan Azure Functions untuk mengembangkan arsitektur tanpa server dan memanfaatkan berbagai implementasi fitur yang disediakannya.
Anda juga mempelajari selengkapnya tentang cara kerja Azure Functions. Informasi yang dapat membantu Anda menentukan cara memenuhi persyaratan organisasi Anda dengan memanfaatkan Azure Functions dengan semaksinal mungkin.
Azure Functions merupakan solusi komputasi tanpa server yang memungkinkan Anda menulis lebih sedikit kode. Ini merupakan penawaran Platform as a Service, sehingga Anda tidak perlu khawatir tentang hosting aplikasi Anda, dan Anda menghemat biaya.
Azure Functions adalah solusi hebat untuk memproses data, mengintegrasikan sistem, bekerja dengan internet-of-things (IoT), dan membangun API dan layanan mikro sederhana.
Menskalakan aplikasi fungsi
Konteks di mana fungsi Anda berjalan disebut aplikasi fungsi. Aplikasi fungsi adalah unit penyebaran, manajemen, dan penskalaan untuk fungsi Anda. Fungsi dalam aplikasi fungsi semuanya berbagi pengaturan dan koneksi yang sama.
Dalam paket Konsumsi dan Premium, Azure Functions menskalakan sumber daya CPU dan memori dengan menambahkan lebih banyak instans aplikasi fungsi. Jumlah instans ditentukan berdasarkan jumlah peristiwa yang memicu fungsi. Karena semua fungsi dalam aplikasi fungsi berbagi sumber daya dalam instans aplikasi, fungsi tersebut menskalakan secara bersamaan.
Pemantauan Azure Functions
Azure Functions menawarkan integrasi bawaan dengan Azure Application Insights untuk memantau fungsi. Application Insights mengumpulkan data log, kinerja, dan kesalahan. Ini membantu Anda mendeteksi anomali performa, mendiagnosis masalah, dan lebih memahami bagaimana fungsi Anda digunakan.
Instrumentasi Application Insights yang diperlukan dibangun di dalam Azure Functions. Dengan integrasi Application Insights yang diaktifkan, data telemetri dikirim ke instans Application Insights anda yang terhubung. Data ini mencakup log yang dihasilkan oleh host Functions, jejak yang ditulis dari kode fungsi Anda, dan data performa.
Catatan
Selain data dari fungsi Anda dan host Fungsi, Anda juga dapat mengumpulkan data dari pengontrol skala Functions.
Gambar berikut menunjukkan contoh cara menampilkan data pada Application Insights untuk Aplikasi Fungsi.
Komponen Azure Functions
Tabel berikut ini menjelaskan komponen utama dari Azure Functions:
| Komponen | Deskripsi |
|---|---|
| Pemicu fungsi | Pemicu adalah penyebab suatu fungsi berjalan. Pemicu mendefinisikan bagaimana fungsi dipanggil. Sebuah fungsi harus memiliki tepat satu pemicu. |
| Pengikatan fungsi | Mengikat ke fungsi adalah cara menyambungkan sumber daya lain secara deklaratif ke fungsi; pengikatan dapat dihubungkan sebagai pengikatan input, pengikatan output, atau keduanya. Data dari pengikatan diberikan ke fungsi sebagai parameter. Jika Anda tidak ingin atau tidak dapat menggunakan pengikatan, Anda masih dapat menggunakan SDK klien di fungsi Anda saat menyambungkan ke layanan. |
| Runtime fungsi | Azure Functions saat ini mendukung beberapa versi host runtime. Functions juga mendukung banyak runtime yang berbeda seperti .NET Core, Node.JavaScript, Java, PowerShell, dan Python. Selama pengembangan, Anda dapat menginstal runtime Functions pada komputer lokal Anda dan menjalankan fungsi secara lokal dengan menggunakan Azure Functions Core Tools. |
| API Management (APIM) | APIM menyediakan keamanan dan perutean untuk titik akhir fungsi yang dipicu HTTP Anda sebagai cara mengeksposnya sebagai REST API sejati. |
| Slot penyebaran | Slot penyebaran Azure Functions memungkinkan aplikasi fungsi Anda menjalankan berbagai instans yang disebut slot. Slot adalah lingkungan yang berbeda yang diekspos melalui titik akhir yang tersedia untuk umum. Slot akan menyediakan cara bagi Anda untuk menguji versi baru fungsi Anda pada Azure di lingkungan yang aman, lalu menukar versi baru dengan lancar ke dalam produksi. |
| Konfigurasi aplikasi fungsi | String koneksi, variabel lingkungan, dan pengaturan aplikasi lainnya didefinisikan secara terpisah untuk setiap aplikasi fungsi. Nilai pengaturan aplikasi fungsi juga dapat dibaca di dalam kode Anda sebagai variabel lingkungan. |
Komponen-komponen ini bekerja sama untuk menyediakan platform end-to-end lengkap bagi Insinyur Aplikasi dan DevOps untuk mengembangkan Arsitektur Tanpa Server menggunakan Azure Functions.