Penulis: Faisal Yahya, IT Strategist
Inovasi cloud computing beberapa tahun belakangan makin menekankan pada konsep pay as you go, terlebih dengan adanya serverless architecture atau juga biasa disebut serverless computing. Meski masih terbilang teknologi baru dalam software delivery, serverless architecture menjadi sebuah terobosan potensial bagi bisnis pada berbagai tingkatan karena skalabilitas (scalability) dan keterjangkauan (affordability) pada konsep tersebut.
Hal ini karena konsep serverless architecture memungkinkan perusahaan mengkonsumsi cloud computing berdasarkan resources yang dikonsumsi oleh sebuah aplikasi. Hal ini berbeda dengan konsep cloud computing umumnya yang mengharuskan perusahaan mengalokasikan sumber daya komputasi yang dibutuhkan terlebih dulu.
Berkat serverless architecture, perusahaan juga tidak perlu khawatir investasi menjadi percuma. Biaya awal capital expenditure (capex) dapat di tekan ke titik terendah. Operating expenditure (opex) tidak lagi mengacu pada uptime dari node pada mesin virtual, namun berapa kali sebuah function pada serverless architecture di-invoke.
Pendek kata, perusahaan cukup berkonsentrasi pada kemampuan dan kualitas coding.
Dua Bagian Komponen
Arsitektur serverless pada dasarnya terdiri atas dua bagian besar, yakni:
Function-as-a-service (FaaS), yakni tempat penyimpanan sekaligus tempat mengeksekusi business-logic yang sederhana. FaaS terdiri dari kumpulan fungsi (function) yang sangat cocok dengan arsitektur event driven. Horizontal scalling pada FaaS dilakukan oleh penyedia layanan secara otomatis (elastic) dan pelanggan hanya membayar computing power yang digunakan, bahkan daya tersebut dihitung dalam satuan per 100 milisekon.
Backend-as-a-service (BaaS), merupakan sistem backend dengan ketersediaan tinggi (highly available) dari arsitektur serverless yang hampir tidak memerlukan setup atau konfigurasi. Contohnya, database Firebase (Google). Seperti halnya FaaS, developer tidak perlu berpikir tentang sumber daya komputasi yang mereka butuhkan. Para developer hanya perlu menyimpan dan mengolah data.
Kedua bagian tersebut tidak perlu seluruhnya ada. Elastisitas sumber daya komputasi bisa dianggap secara virtual tanpa batas karena penyedia layanan-lah yang melakukan provisioning secara otomatis.
Lebih jauh, proses simplifikasi pada arsitektur rupanya tidak hanya terjadi pada hardware. Para pekerja sistem yang tadinya bervariasi, seperti developer, tester, database administrator, operation, bahkan security engineer, kini digabungkan dalam satu pekerjaan, yakni cloud engineer.
Mengapa ini bisa terjadi? Dengan penerapan serverless architecture, developer tidak perlu lagi berpikir tentang perangkat keras, perangkat lunak, patch, maupun sumber daya komputasi. Mereka cukup berkonsentrasi pada coding sehingga menghasilkan runtime yang efektif, efisien, dan aman.