Apache OpenWhisk adalah platform cloud serverless open source yang menjalankan fungsi sebagai respons terhadap suatu peristiwa (event). Platform ini menggunakan model function as a service (FaaS) untuk mengelola infrastruktur dan server bagi aplikasi berbasis cloud. Dengan OpenWhisk, pengguna tidak perlu khawatir tentang pengelolaan infrastruktur dan skalabilitas karena platform ini menggunakan Docker container.
OpenWhisk dapat digunakan untuk mengemas ulang aplikasi lama, menerapkan layanan, mengelola website, dan membangun aplikasi, yang pada akhirnya bisa menghemat biaya pengembangan.
Platform ini dapat dimanfaatkan oleh penyedia layanan cloud, vendor Software as a Service (SaaS), administrator sistem, serta pengembang yang ingin memodernisasi aplikasi lama atau mempersiapkan infrastruktur untuk pertumbuhan produk.
Cara Kerja OpenWhisk
OpenWhisk menggunakan sistem berbasis event yang merespons kejadian melalui mekanisme yang disebut Trigger. Pengembang menulis kode fungsional yang disebut Action, yang dapat dijadwalkan secara dinamis dan dieksekusi saat ada Trigger. Trigger bisa berasal dari permintaan HTTP atau sumber eksternal yang disebut Feeds. Setelah itu, Trigger akan menggunakan container untuk menentukan aturan pemrosesan event dan Action yang harus dijalankan.
Platform ini dapat secara otomatis melakukan skalabilitas sesuai permintaan dan mendukung berbagai bahasa pemrograman seperti NodeJS, Swift, Java, Go, Python, Ruby, dan Ballerina. OpenWhisk juga menyediakan antarmuka command line berbasis RESTful API, sehingga mendukung bahasa tambahan, logika khusus, serta opsi deployment container lainnya. Selain itu, model pemrograman OpenWhisk Composer bisa digunakan untuk memodernisasi aplikasi yang sudah ada.
Keunggulan OpenWhisk
Sebagai bagian dari Apache Software Foundation (ASF), OpenWhisk dikembangkan dan dikelola oleh salah satu organisasi open source terbesar di dunia. Dengan platform ini, pengguna dapat lebih fokus pada pengembangan produk tanpa perlu mengkhawatirkan infrastruktur pendukungnya. Skalabilitas otomatis per permintaan dan alokasi sumber daya yang efisien memungkinkan OpenWhisk tumbuh seiring dengan perkembangan situs, layanan, atau aplikasi yang didukungnya.
Pengembangan OpenWhisk saat ini banyak didukung oleh IBM dan Adobe. Platform ini sangat andal, mampu menangani ribuan Trigger dan Action secara bersamaan. Karena sifatnya yang serverless, OpenWhisk dapat menghemat waktu yang biasanya digunakan untuk debugging, pemantauan, dan pemeliharaan infrastruktur.