Apa itu Serverless?

Apa itu serverless? maksudnya aplikasi kita tidak ditaruh di server gitu? Mungkin itu yang banyak tergenang dipikiran banyak orang pertama kali mengenal teknologi baru ini.

Secara umum/sederhana, Serverless adalah “menjalankan aplikasi tanpa khawatir atau tanpa memikirkan tentang server”, lebih jelasnya kita tidak memikirkan berapa RAM/CPU yang dibutuhkan untuk server yang kita akan pakai, cara melakukan scaling servernya, dan yang kita bayar adalah yang hanya dipakai saja. Kalau ramai, ya bayar lebih mahal, kalau sepi ya lebih murah bayarnya.

Serverless ini sebenarnya adalah bagian dari istilah umum Function as A Service (FaaS) yang memiliki ciri sebagai berikut:

  • tidak ada resources tetap (CPU/RAM/Bandwith) dll untuk server yang kita miliki,
  • aplikasi hanya berjalan ketika ada trafik masuk,
  • ketika ada request akan ada satu process yang berjalan untuk melayani request tersebut
  • yang dibayar adalah waktu eksekusi dan trafik akses

sangat berbeda dengan hosting/vps tradisional misalnya:

  • pembayaran berbasis resources (CPU, RAM, bandwith dll)
  • jika sudah mencapai limitasi, kita harus scale up servernya
  • harus membayar meskipun tidak ada trafik ke server tersebut

Vendor Penyedia

Yang saat ini menyediakan layanan serverless (FaaS) ini antara lain:

  • Amazon, dengan AWS Lambda
  • Google, dengan Google Cloud Functions
  • IBM, dengan nama IBM Cloud Functions
  • Microsoft, dengan nama Azure Functions,
  • Laravel, dengan nama Laravel Vapor

dan sudah banyak bahasa pemrograman yang mendukung teknologi ini, dari mulai Javascript sampai dengan Golang, PHP, Python dll.

Selain aplikasi berbasis web, beberapa vendor diatas juga menyediakan ‘serverless database’, dengan nama:

  • Amazon Aurora, untuk database MySQL dan PostgreSQL
  • Azure Data Lake, dari Microsoft Azure
  • Google Cloud Datastore dan Firebase, dari Google

 

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: