Lembar Pengesahan
Terbatas karya
» ITB
Terbatas karya
» ITB
BAB I
Terbatas karya
» ITB
Terbatas karya
» ITB
BAB II
Terbatas karya
» ITB
Terbatas karya
» ITB
BAB III
Terbatas karya
» ITB
Terbatas karya
» ITB
BAB IV
Terbatas karya
» ITB
Terbatas karya
» ITB
BAB V
Terbatas karya
» ITB
Terbatas karya
» ITB
Seiring bertambahnya kompleksitas aplikasi, pengembangan aplikasi dengan
struktur monolith menjadi semakin sulit akibat berbagai overhead yang membesar
secara linear terhadap ukuran aplikasi. Untuk itu, saat ini banyak aplikasi yang
dikembangkan dengan prinsip membagi aplikasi menjadi bagian-bagian kecil yang
mempunyai fungsi-fungsi spesifik, konsep tersebut dikenal dengan istilah
microservices.
Walaupun aplikasi microservices mampu beradaptasi lebih baik dengan proses
bisnis yang terus berkembang, mengoperasikan aplikasi microservices relatif lebih
sulit karena aplikasi terdiri dari banyak bagian-bagian kecil. Salah satu tantangan
dalam operasi microservices adalah melakukan autoscaling secara efektif. Hal ini
disebabkan autoscaling harus dilakukan pada bagian aplikasi yang tepat. Apabila
autoscaling dilakukan pada bagian aplikasi yang tidak relevan, maka kinerja
aplikasi mungkin tidak optimal dan penggunaan sumber daya juga menjadi boros.
Pada tugas akhir ini dikembangkan sistem autoscaling yang mempertimbangkan
keterkaitan antara bagian-bagian aplikasi microservices. Informasi keterkaitan
antara bagian aplikasi didapatkan dengan mengolah arus aliran data saat aplikasi
melakukan HTTP request. Sistem juga menggunakan informasi historis tentang
tingkat penggunaan CPU untuk menghitung jumlah replikasi yang tepat serta
memastikan sebuah bagian aplikasi benar-benar relevan dalam proses autoscaling.
Pada uji dengan pola beban meningkat secara linear, didapatkan sistem dengan
scaler aktif mengalami peningkatan throughput sebesar 128% dibandingkan
dengan sistem serupa dengan scaler tidak aktif. Hal ini dicapai dengan tetap
menjaga tingkat penggunaan sumber daya komputasi yang efisien dan sehingga
tidak berlebihan dan boros.
Perpustakaan Digital ITB