Apa itu Google Cloud Functions
Google Cloud Functions adalah layanan komputasi tanpa server yang memungkinkan Anda untuk membuat dan menerapkan fungsi kecil dan bersifat tunggal yang merespons peristiwa dalam ekosistem Google Cloud Platform (GCP). Fungsi-fungsi ini dikelola secara otomatis, sangat skalabel, dan dapat dipicu oleh berbagai sumber peristiwa, seperti permintaan HTTP, perubahan pada Cloud Storage, dan pesan di Cloud Pub/Sub.
Manfaat Menggunakan Google Cloud Functions
Google Cloud Functions menawarkan beberapa manfaat yang membuatnya menjadi pilihan yang menarik bagi para pengembang dan organisasi:
-
Pengembangan yang Mudah Dipahami
Fokus pada menulis kode Anda sementara Google Cloud Functions mengurus infrastruktur mendasar, termasuk penyediaan, skalabilitas, dan pemeliharaan. -
Skalabilitas
Cloud Functions secara otomatis menyesuaikan dengan jumlah permintaan atau peristiwa, sehingga Anda tidak perlu khawatir tentang mengelola infrastruktur untuk menampung beban kerja yang bervariasi. -
Efektivitas Biaya
Bayar hanya untuk waktu komputasi yang digunakan ketika fungsi Anda dijalankan, dengan model gratis yang murah hati yang tersedia untuk eksperimen dan proyek skala kecil. -
Fleksibilitas
Tulis fungsi Anda dalam bahasa pemrograman populer seperti Node.js, Python, Go, Java, dan .NET. -
Integrasi yang Mulus
Cloud Functions dapat dengan mudah diintegrasikan dengan layanan GCP lainnya, memungkinkan Anda membangun aplikasi yang kuat yang memanfaatkan seluruh penawaran GCP.
Fitur Utama Google Cloud Functions
Google Cloud Functions menawarkan berbagai fitur canggih yang membuatnya menjadi pilihan yang menarik bagi pengembang yang membangun aplikasi tanpa server. Pada bab ini, saya akan menjelajahi beberapa fitur utama yang membedakannya dari platform tanpa server lainnya.
Eksekusi Berbasis Acara
Cloud Functions dirancang untuk dieksekusi berdasarkan acara, artinya mereka dipicu oleh peristiwa tertentu dalam ekosistem Google Cloud Platform. Acara dapat berasal dari berbagai sumber, seperti:
- Permintaan HTTP
- Perubahan di Cloud Storage (misalnya, objek baru atau dimodifikasi)
- Pesan yang dipublikasikan ke topik Cloud Pub/Sub
- Perubahan dalam dokumen Firestore
- Tugas Google Cloud Scheduler
Arsitektur berbasis acara ini memungkinkan Anda membangun aplikasi yang sangat responsif yang bereaksi terhadap perubahan secara real-time.
Auto-Scaling
Google Cloud Functions secara otomatis menyesuaikan dengan jumlah permintaan atau peristiwa, sehingga Anda tidak perlu khawatir tentang mengelola infrastruktur untuk menampung beban kerja yang bervariasi. Platform ini secara otomatis menyediakan dan mematikan resource berdasarkan permintaan, memastikan bahwa fungsi Anda dapat menangani jumlah lalu lintas apa pun tanpa campur tangan manual.
Pembayaran Per-Pemakaian
Dengan Google Cloud Functions, Anda hanya membayar untuk waktu komputasi yang digunakan ketika fungsi Anda dijalankan. Model pembayaran per-pemakaian ini memastikan bahwa Anda hanya dikenakan biaya untuk resource yang Anda gunakan, sehingga cocok untuk aplikasi dengan beban kerja variabel atau yang sulit diprediksi. Google Cloud Functions juga menawarkan model gratis yang murah hati, memungkinkan Anda untuk bereksperimen dengan platform tanpa mengeluarkan biaya.
Dukungan untuk Beberapa Bahasa
Google Cloud Functions mendukung berbagai bahasa pemrograman populer, sehingga Anda dapat memanfaatkan keterampilan dan kode yang sudah ada. Bahasa yang didukung meliputi:
- Node.js
- Python
- Go
- Java
- .NET
Dengan menawarkan dukungan untuk berbagai bahasa, Google Cloud Functions memungkinkan Anda membangun aplikasi tanpa server menggunakan bahasa yang paling sesuai dengan kebutuhan dan keahlian Anda.
Integrasi dengan Layanan Google Cloud Platform
Cloud Functions dapat dengan mudah diintegrasikan dengan layanan GCP lainnya, memungkinkan Anda membangun aplikasi yang kuat yang memanfaatkan seluruh penawaran GCP. Beberapa layanan yang dapat Anda integrasikan dengan mudah dengan Google Cloud Functions meliputi:
- Cloud Storage
- Cloud Pub/Sub
- Firestore
- BigQuery
- Google Cloud Scheduler
- Stackdriver Logging dan Monitoring
Dengan memanfaatkan integrasi ini, Anda dapat membuat alur kerja yang kompleks, memproses dan menganalisis data, dan membangun aplikasi berbasis acara yang memanfaatkan kekuatan infrastruktur cloud yang kuat milik Google.
Harga Cloud Functions
Google Cloud Functions mengikuti model pembayaran per-pemakaian, yang berarti Anda hanya membayar untuk resource yang digunakan ketika fungsi Anda dijalankan. Pada bab ini, saya akan menjelajahi berbagai komponen dari model harga dan membantu Anda memahami bagaimana penagihan berfungsi untuk Cloud Functions.
Komponen Harga
Ada tiga komponen utama yang menentukan biaya penggunaan Google Cloud Functions:
-
Invocations
Jumlah kali fungsi Anda dieksekusi. -
Waktu Komputasi
Total waktu yang dihabiskan untuk mengeksekusi fungsi Anda, diukur dalam gigabyte-detik (GB-seconds). -
Jaringan
Jumlah data yang ditransfer keluar dari Google Cloud Functions ke layanan atau pengguna eksternal.
Invocations
Anda dikenakan biaya untuk setiap penggilan fungsi, terlepas dari apakah itu dipicu oleh peristiwa atau permintaan HTTP. Biaya per juta penggilan dijelaskan dalam dokumentasi harga Google Cloud Functions.
Waktu Komputasi
Waktu komputasi dihitung berdasarkan jumlah memori dan CPU yang dialokasikan untuk fungsi Anda serta durasi eksekusi fungsi. Ini diukur dalam GB-detik, yang merupakan unit yang menggabungkan memori (GB) dan waktu (detik).
Untuk menghitung biaya waktu komputasi, Anda perlu mempertimbangkan:
-
Alokatif memori (dalam GB)
Jumlah memori yang dialokasikan untuk fungsi Anda. -
Alokatif CPU
Jumlah daya CPU yang dialokasikan untuk fungsi Anda, yang sebanding dengan alokasi memori. -
Durasi eksekusi
Waktu yang dibutuhkan untuk fungsi Anda dieksekusi, diukur dalam kelipatan 100 milidetik.
Biaya waktu komputasi ditentukan dengan mengalikan alokasi memori, alokasi CPU, dan durasi eksekusi, kemudian menerapkan harga per GB-detik yang dijelaskan dalam dokumentasi harga Google Cloud Functions.
Jaringan
Anda dikenakan biaya untuk jumlah data yang ditransfer keluar dari Google Cloud Functions ke layanan atau pengguna eksternal. Transfer data dalam wilayah yang sama atau antara layanan Google Cloud umumnya gratis. Namun, transfer data antar wilayah atau ke internet menimbulkan biaya berdasarkan harga jaringan Google Cloud.
Tingkat Gratis
Google Cloud Functions menawarkan tingkat gratis yang murah hati yang memungkinkan Anda untuk bereksperimen dengan platform tanpa mengeluarkan biaya. Tingkat gratis mencakup:
- 2 juta penggilan per bulan
- 400.000 GB-detik waktu komputasi per bulan
- 200.000 GHz-detik waktu CPU per bulan
- 5 GB jaringan keluar per bulan
Referensi