Severless computing, cara kini melarikan website.
Edge computing = server is more closer to the user. Can be apply to cloud computing or serverless computing. Example, CDN.
Serverless edge computing: Cloudflare Pages, netlify, vercel
Severless computing, cara kini melarikan website.
Apa itu severless computing?
Untuk memahami serverless computing, kita perlu tahu apa itu cloud computing terlebih dahulu. Cloud computing ialah satu perkhidmatan di mana kita menyewa infrastruktur komputer seperti pelayan dan komponen rangkaian. Contohnya termasuk Oracle Cloud Infrastructure (OCI), Amazon AWS, Google Cloud, dan Akamai (Linode). Kita boleh menyewa pelayan fizikal atau maya serta komponen rangkaian. Dengan adanya pelayan di cloud computing, kita boleh melancarkan perkhidmatan seperti laman web di dalamnya. Kita juga mempunyai kawalan penuh terhadap infrastruktur ini, bermakna kita bertanggungjawab untuk mengurus semuanya—dari segi keselamatan, kemas kini perisian, port rangkaian, DNS, dan banyak lagi. Ini tidak menjadi masalah jika sesebuah organisasi mempunyai pasukan yang benar-benar berdedikasi untuk tugas ini, seperti pasukan DevOps. Namun, bagi organisasi kecil atau individu yang membangunkan laman web sebagai hobi, kerja penyelenggaraan infrastruktur ini sangat membebankan.
Dengan semua cabaran ini, munculnya serverless computing. Serverless computing menyelesaikan masalah ini dengan mengambil alih tanggungjawab penyelenggaraan infrastruktur. Jadi, kita boleh fokus kepada pembangunan web tanpa perlu risau tentang deployment. Contoh perkhidmatan serverless computing ialah Cloudflare Pages, Vercel, dan Netlify. Serverless computing adalah sebahagian daripada ekosistem JAM Stack. Fail yang dideploy oleh serverless computing biasanya kecil kerana hanya frontend yang perlu dideploy. Frontend ini akan berkomunikasi dengan backend menggunakan API. Sebagai contoh, NuxtJS dideploy di Cloudflare Pages sebagai frontend dan pangkalan data disimpan di Supabase sebagai backend. API Supabase digunakan oleh frontend untuk berkomunikasi.
Lihat penerangan di bawah untuk gambaran yang lebih jelas:
- Cloud computing: Pengguna mengurus mesin maya, storan, dan sebagainya. Auto scaling secara manual. Bayar untuk sumber yang diperuntukkan. Lebih kompleks kerana perlu mengurus infrastruktur.
- Perkhidmatan cloud computing: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS).
- Serverless computing: Tiada pengurusan pelayan. Auto scaling oleh penyedia. Bayar mengikut masa pelaksanaan. Lebih ringkas, fokus pada kod dan logik perniagaan.
- Perkhidmatan serverless computing: Function-as-a-Service (FaaS).
Serverless computing dan Edge network
Kita sudah memahami konsep serverless computing. Jadi, apa pula maksud edge network? Edge network ialah perkhidmatan cloud yang diletakkan di lokasi paling hampir dengan pengguna akhir. Contohnya ialah Content Delivery Network (CDN). Serverless computing biasanya digabungkan dengan edge network dalam proses deployment. Ini boleh dilakukan kerana serverless hanya perlu deploy servis frontend sahaja. Fail frontend biasanya kecil (sekitar 100MB). Dengan saiz fail yang kecil ini, serverless computing boleh membuat salinan di seluruh dunia. Ini memberikan impak positif kepada pengguna kerana masa pemuatan (loading time) menjadi lebih pantas.
Akhir kata
Dengan adanya teknologi serverless computing, pembangunan web menjadi lebih mudah kerana kita tidak lagi perlu mengambil berat tentang penyelenggaraan pelayan. Kita hanya perlu push kod ke repositori cloud dan serverless akan menjalankannya untuk kita.