FaaS (Fungsi sebagai Layanan)

Pelajari tentang manfaat dan tantangan unik dari model layanan komputasi cloud ini dan nilai kesesuaian FaaS untuk berbagai metode pengembangan dan penerapan aplikasi.

Ikhtisar FaaS:

  • FaaS adalah jenis layanan komputasi cloud di mana penyedia layanan cloud (CSP) memiliki dan mengelola semua aspek lingkungan komputasi, termasuk infrastruktur perangkat keras, middleware, sistem operasi, dan bahkan aplikasi.

  • FaaS dapat menjadi pilihan ekonomis untuk model penggunaan intermiten dan tidak terprediksi yang ditandai oleh lonjakan aktivitas yang cepat, karena pengguna hanya membayar untuk waktu eksekusi atau pemrosesan yang diperlukan untuk melakukan pekerjaan yang berguna.

  • Penggunaan umum FaaS mencakup pemrosesan, validasi, dan penyortiran data, serta dukungan backend untuk aplikasi mobile dan IoT.

author-image

Oleh

Apa Itu FaaS?

Berbagai jenis komputasi cloud telah mendapatkan popularitas dalam beberapa tahun belakangan karena pemimpin IT menyambut kenyamanan, skalabitas, dan keunggulan biaya dari pendekatan fleksibel terhadap manajemen infrastruktur ini.

Penyedia layanan cloud (CSP) telah merespons dengan berbagai model layanan cloud, masing-masing dengan tingkat layanannya sendiri. Salah satu penawaran yang paling komprehensif adalah Fungsi sebagai Layanan (FaaS).

Dalam model FaaS, pelanggan mengeksekusi kode di cloud, sementara CSP mengehos dan mengelola seluruh operasi backend, mulai dari infrastruktur hingga aplikasi. Pelanggan hanya bertanggung jawab untuk data mereka sendiri dan fungsi yang mereka lakukan.

Biasanya, pelanggan FaaS hanya membayar untuk waktu yang sebenarnya diperlukan untuk mengeksekusi “fungsi” dalam Fungsi sebagai Layanan. Eksekusi dapat berlangsung dalam hitungan detik, dan sistem FaaS dapat dengan cepat mengakomodasi banyak instans secara bersamaan. Tidak ada biaya lanjutan yang dikenakan kepada pelanggan untuk waktu tunggu antara eksekusi satu fungsi ke berikutnya.

Penetapan harga berdasarkan peristiwa ini membuat model layanan cloud suatu pilihan ekonomis bagi developer yang memiliki kebutuhan pemrosesan intermiten atau sporadis.

Penggunaan umum FaaS mencakup pemrosesan, validasi, dan penyortiran data, serta dukungan backend untuk aplikasi mobile dan IoT.

“Komputasi Tanpa Server” yang Berjalan di Server

Model FaaS dianggap “tanpa server” dari perspektif klien karena CSP mengelola infrastruktur cloud, platform, sistem operasi, dan aplikasi perangkat lunak—semua yang mungkin tidak terlihat oleh pengguna.

Namun, “komputasi tanpa server” adalah nama yang salah kaprah. Meskipun pengguna FaaS tidak mengelola atau bahkan tidak melihat perangkat kerasnya, model FaaS berjalan di server. Perangkat keras dimiliki, dioperasikan, dan dikelola oleh CSP, sehingga pelanggan dapat memanfaatkan fungsi secara penuh sesuai permintaan, tanpa membeli atau memelihara server mereka sendiri.

‘Layanan’ yang menjadi subjek huruf besar ‘S’ dalam ‘FaaS’ adalah layanan bisnis, seperti pada penyedia ‘layanan’ cloud. Layanan ini adalah unit konsumsi. Anda tidak membayar server tetapi membayar untuk hal yang dihos.1

Teknologi Intel® untuk FaaS

Dalam kebanyakan penawaran FaaS dari CSP, komponen platform tidak dijelaskan secara terperinci. Pengguna biasanya tidak dapat meminta teknologi perangkat keras tertentu untuk mesin virtual mereka. Fitur tertentu dari perangkat keras Intel®, seperti akselerator Intel® AVX-512 dan AVX2, membantu mengoptimalkan performa dan meningkatkan kepuasan pengguna. Karena alasan itu, beberapa CSP lebih memilih untuk menjalankan penawaran layanan FaaS mereka di platform berbasis teknologi Intel®.

Meskipun developer perangkat lunak tidak dapat menentukan mesin virtual berbasis teknologi Intel di lingkungan FaaS, mereka dapat meminta CSP untuk mengakses pustaka kode yang dioptimalkan Intel. Sebagian dari pustaka ini tersedia dalam rangkaian kit peralatan Intel® oneAPI dan memasukkan kode peningkat performa untuk mengakselerasi rutinitas matematik yang kompleks, kompresi, enkripsi, dan tugas intensif komputasi lainnya. Optimisasi semacam itu dapat membantu pengguna untuk menghemat waktu dan uang pada implementasi FaaS.

Apa Itu Layanan Mikro?

Layanan mikro adalah bagian dari arsitektur aplikasi, tempat suatu bagian dari kode aplikasi yang beroperasi secara independen dari fungsi lainnya. Ketika mengembangkan aplikasi yang kompleks, pendekatan layanan mikro mengisolasi fungsi yang berbeda satu sama lain, sehingga seluruh aplikasi dapat terus beroperasi bahkan jika satu layanan gagal.

Lingkungan pengembangan perangkat lunak berbasis layanan mikro dapat dicapai dalam konteks arsitektur berorientasi layanan. Aplikasi kompleks dibangun dan dipelihara sebagai kumpulan layanan diskrit yang terintegrasi secara longgar melalui antarmuka pemrograman aplikasi (API.) Aplikasi perangkat lunak berorientasi layanan dan layanan mikro komponen mereka lebih mudah untuk dipelihara dan ditingkatkan karena layanan individual dapat di-patch atau ditingkatkan tanpa mematikan seluruh aplikasi.

Banyak modul layanan mikro dapat dikembangkan dan dikirim secara efisien dalam lingkungan FaaS. Dalam banyak kasus, layanan mikro berada dalam kontainerisasi, atau terisolasi lebih lanjut, untuk meningkatkan kontrol atas setiap bagian individu dari aplikasi yang lebih besar.

Bagaimana Cara Kerja Fungsi sebagai Layanan?

Dari perspektif pengguna, Fungsi sebagai Layanan adalah lingkungan yang telah dibangun sebelumnya untuk pengembangan atau penerapan perangkat lunak. CSP memiliki dan mengelola seluruh tumpukan teknologi, termasuk semua perangkat keras, middleware, dan perangkat lunak.

Dalam model layanan cloud lainnya, pengguna membayar, selama jangka waktu yang ditetapkan, untuk akses terus-menerus ke mesin virtual atau kontainer dan untuk sumber daya yang mereka konsumsi. Dalam model FaaS, pelanggan hanya membayar untuk waktu dan sumber daya yang diperlukan untuk memproduksi fungsi.

Dalam satu struktur harga CSP, misalnya, durasi fungsi dan pengerahan sumber daya diukur dalam “detik gigabyte,” yang dibulatkan ke milidetik terdekat.2

Keunggulan FaaS

Pengguna FaaS mendapatkan manfaat dari model harga bayar sesuai penggunaan yang membedakan jenis komputasi cloud ini dari model “sebagai Layanan” lainnya. CSP memiliki dan mengelola seluruh tumpukan teknologi, mulai dari perangkat keras hingga perangkat lunak dan alat aplikasi, yang membebaskan pengguna untuk hanya mengelola data dan fungsi mereka sendiri.

Pengguna hanya membayar untuk waktu ketika fungsi atau layanan aktif berjalan di lingkungan FaaS. Lonjakan aktivitas ini sering diukur dalam milidetik. Pengguna tidak membayar waktu tunggu antara lonjakan tersebut.

FaaS paling cocok untuk beban kerja yang tidak dapat diprediksi dan intermiten.

Tantangan FaaS

Untuk beban kerja yang terus-menerus dan tidak terputus, model “sebagai Layanan” yang berbeda dapat lebih ekonomis dibandingkan FaaS. Karena penggunaan FaaS sering diukur dan dibayar dalam peningkatan milidetik, dan FaaS jauh lebih mahal daripada layanan cloud IaaS umum, penggunaan konstan dapat menjadi sangat mahal.

Implementasi FaaS juga dapat sulit untuk di-debug karena penciptaan lingkungan pengembangan tidak dapat terlihat pengguna. Ketika pengujian ekstensif diperlukan, model komputasi cloud yang berbeda akan lebih disukai, sehingga pengguna dapat menentukan dan mengontrol berbagai ekosistem standar. Jika teknologi perangkat lunak sudah matang dan independen platform sepenuhnya, FaaS dapat menjadi pilihan yang cocok.

Kasus Penggunaan FaaS

Fungsi sesuai permintaan adalah model penggunaan keseluruhan yang cocok untuk lingkungan FaaS. Dalam pengaturan sesuai permintaan, fiturnya aktif dan padam secara cepat dan intermiten. Pengguna FaaS hanya membayar untuk waktu ketika fitur tersebut aktif, sehingga model sesuai permintaan adalah kasus FaaS yang ekonomis.

Situs web interaktif adalah contoh model penggunaan sesuai permintaan, khususnya dalam eksekusi backend. FaaS hanya diaktifkan ketika pengguna akhir mengeklik situs web dan memicu peristiwa singkat. Penerbit media online dan situs e-commerce memanfaatkan model FaaS untuk fleksibilitasnya, karena pengguna mengakses situs mereka pada jadwal yang tidak dapat diprediksi. Misalnya, perusahaan yang menyediakan media streaming dapat mengelola situs utamanya, dengan menu dan rekomendasi penggunanya, dalam rencana FaaS CSP.

Tugas pemrosesan dan validasi data dapat berhasil diadaptasi ke model FaaS. Satu kasus penggunaan adalah instalasi Internet of Things (IoT) yang mengirimkan data sensor ke cloud secara intermiten untuk analisis.

Pengembangan perangkat lunak juga dapat diterapkan dalam pengaturan FaaS, jika beban kerja pengembangan bersifat intermiten.

Penerapan perangkat lunak dapat cocok dengan model FaaS untuk pengiriman layanan mikro. Penyedia Perangkat Lunak sebagai Layanan (SaaS) juga dapat menjalankan operasi mereka sendiri berbasis FaaS selama fase awal ketika mereka menambahkan pengguna baru dengan cepat dan perangkat lunak yang sedang digunakan berada dalam pola yang tidak teratur serta aktif-padam terus-menerus.

Jenis Komputasi Cloud

Layanan komputasi cloud dapat dibagi menjadi dua kategori dasar: publik dan privat. Banyak organisasi yang menerapkan kombinasi dari dua model layanan cloud, dalam konfigurasi hibrida atau multicloud.

Cloud Publik

Dalam model layanan cloud publik, pengguna membayar untuk penggunaan komputasi, penyimpanan, dan sumber daya jaringan CSP. Layanan cloud publik tersedia sesuai permintaan, sehingga mereka dapat diterapkan secara cepat dan dianggarkan sebagai biaya operasi dengan sedikit investasi di depan.

Cloud Pribadi

Sebaliknya, cloud privat berjalan di pusat data organisasi itu sendiri, yang memerlukan investasi di depan yang signifikan di perangkat keras serta manajemen yang berkelanjutan. Dalam jangka panjang, cloud privat dapat menjadi lebih ekonomis dibandingkan model layanan cloud publik dalam beberapa kasus.

Keunggulan cloud privat mencakup kontrol terlokalisasi terhadap kekayaan intelektual dan kepatuhan peraturan, serta dukungan untuk beban kerja dan aplikasi yang kritis bisnis yang tidak dapat bermigrasi dengan mudah ke cloud publik.

Cloud Hibrida

Dengan cloud hibrida, organisasi menikmati manfaat baik model layanan cloud publik dan privat. Cloud hibrida menghubungkan cloud publik dan privat sehingga organisasi dapat berbagi aplikasi dan data di antara dua lingkungan. Cloud hibrida menawarkan fleksibilitas, skalabilitas, kontrol, dan penghematan biaya potensial.

Multicloud

Dalam model multicloud, organisasi memanfaatkan layanan komputasi cloud dari beberapa CSP yang berbeda. Pengerahan sumber daya biasanya dikelola dalam perangkat lunak. Strategi multicloud sangat fleksibel karena organisasi dapat menyeimbangkan beban kerja dan mengoptimalkan biaya tanpa terkunci ke dalam satu penawaran layanan CSP atau tumpukan teknologi.

Banyak organisasi menentukan instan berbasis teknologi Intel® di setiap CSP dalam penerapan multicloud untuk mendukung konsistensi dan kompatibilitas di berbagai penyedia.

IaaS, PaaS, dan SaaS

Banyak CSP menawarkan spektrum pilihan komputasi cloud “sebagai Layanan”, mulai dari sekadar akses ke perangkat keras server hingga mencakup opsi komprehensif skala penuh, seperti FaaS.

IaaS (Infrastruktur sebagai Layanan)

Layanan komputasi cloud dasar yang paling familiar dikenal sebagai Infrastruktur sebagai Layanan (IaaS.) Dalam model IaaS, CSP memiliki dan mengelola semua perangkat keras, termasuk server, jaringan, dan penyimpanan. Pengguna bertanggung jawab atas tumpukan perangkat lunak, termasuk langganan, lisensi, upgrade, dan pemeliharaan semua sistem operasi dan aplikasi serta data dan fungsi organisasi.

Manajer IT condong ke arah IaaS sebagai alternatif untuk membeli dan memelihara perangkat keras di tempat atau kolokasi, dengan pertimbangan pengeluaran modal yang terkait. IaaS adalah model fleksibel yang dapat berskala dengan kebutuhan pengguna, dan biaya CSP diperlakukan sebagai biaya operasional dalam anggaran organisasi.

PaaS (Platform sebagai Layanan)

Platform sebagai Layanan (PaaS) adalah model layanan cloud yang menawarkan lingkungan pengembangan dan penerapan yang lebih lengkap. Penawaran PaaS dari CSP biasanya mencakup semua infrastruktur perangkat keras dari IaaS ditambah blok bangunan yang membentuk platform perangkat lunak: sistem operasi, middleware, alat pengembangan, dan beberapa jenis layanan manajemen data serta analisis.

Pengguna PaaS terus mengelola lapisan aplikasi tumpukan perangkat lunak, serta data dan fungsi mereka sendiri, seperti apa yang mereka lakukan dalam IaaS.

SaaS (Perangkat Lunak sebagai Layanan)

SaaS, atau Perangkat Lunak sebagai Layanan, kemungkinan besar adalah model layanan komputasi cloud yang paling luas. Ada contoh-contoh penerapan SaaS di hampir setiap organisasi, termasuk organisasi yang menolak IaaS dan memilih untuk memiliki serta mengelola infrastruktur server yang tangguh di tempat.

Beberapa aplikasi, seperti email, CRM, rangkaian produktivitas, dan penyimpanan file, dijalankan dengan nyaman dalam model SaaS. Organisasi membayar biaya lisensi untuk periode waktu tertentu, dan aplikasi menjadi tersedia di cloud. Pengguna dan tim IT menghindari unduhan dan instalasi yang memakan waktu, dan mereka tidak perlu mengelola pembaruan.

Pertanyaan Umum

Pertanyaan Umum

Bukan, FaaS bukanlah layanan mikro, tetapi kedua jenis layanan komputasi cloud itu terkait. Layanan mikro adalah bagian modular dari aplikasi yang lebih kompleks yang dapat dikembangkan atau diterapkan dalam lingkungan FaaS.

FaaS adalah jenis layanan komputasi cloud di mana penyedia layanan cloud (CSP) memiliki dan mengelola semua aspek lingkungan komputasi, termasuk infrastruktur perangkat keras, middleware, sistem operasi, dan bahkan aplikasi.

Di satu sisi, baik penawaran PaaS dan FaaS mencakup akses ke infrastruktur perangkat keras ditambah platform perangkat lunak dasar, termasuk sistem operasi, middleware, dan beberapa alat serta layanan.

Pengguna PaaS terus mengelola lapisan aplikasi dari tumpukan perangkat lunak, sementara pengguna FaaS hanya bertanggung jawab atas data dan fungsi mereka sendiri.

Ya, model FaaS dianggap tanpa server karena CSP mengelola seluruh tumpukan perangkat keras dan perangkat lunak. Sebenarnya FaaS beroperasi di server, tetapi perangkat keras dimiliki dan dikelola oleh CSP, sehingga dari perspektif pengguna ini adalah pengalaman komputasi tanpa server.