Apa Itu Workload?
Dalam dunia komputasi, *workload* adalah istilah yang biasanya merujuk pada program atau aplikasi yang dijalankan di komputer. Workload bisa sesederhana aplikasi jam alarm atau kontak di smartphone, atau serumit aplikasi enterprise besar yang dijalankan di banyak server dengan ribuan klien yang saling terhubung melalui jaringan luas. Istilah workload, application, software, dan program sering kali digunakan secara bergantian.
Selain itu, workload juga bisa mengacu pada seberapa besar beban kerja yang diberikan suatu perangkat lunak terhadap resource komputasi yang ada. Secara umum, workload diukur berdasarkan waktu dan resource yang dibutuhkan untuk menyelesaikan tugas tertentu atau menghasilkan output dari input yang diberikan.
Workload yang ringan biasanya hanya butuh sedikit resource seperti prosesor, CPU, siklus clock, penyimpanan, dan input/output. Sementara workload berat bisa menghabiskan banyak resource.
Jenis tugas yang dilakukan oleh workload sangat beragam, tergantung pada kompleksitas dan tujuan aplikasinya. Misalnya, aplikasi web server mengukur beban berdasarkan jumlah halaman web yang disajikan per detik. Aplikasi lain bisa mengukurnya dari jumlah transaksi per detik dengan sejumlah pengguna jaringan yang aktif bersamaan. Pengukuran ini sering kali menggunakan standar yang dikenal sebagai benchmark.
Jenis-Jenis Workload
Karena workload bisa punya tugas dan cara kerja yang sangat beragam, sulit untuk mengklasifikasikannya hanya dengan satu sistem. Tapi secara umum, workload bisa dibagi seperti berikut:
- Static vs. Dynamic. Workload static berjalan terus-menerus, seperti OS, email, ERP, CRM, dan aplikasi penting bisnis lainnya. Sedangkan workload dynamic hanya muncul saat dibutuhkan, misalnya workload untuk billing di akhir bulan atau instance sementara untuk testing.
- Transactional vs. Batch. Di era mainframe, workload diklasifikasikan sebagai transactional (berjalan terus-menerus seperti sistem perbankan) dan batch (berjalan sesuai jadwal atau permintaan seperti sistem penagihan bulanan).
- Real-time Software. Jenis ini menuntut throughput tinggi dan latensi rendah, biasanya digunakan di sistem kritikal seperti medis, militer, atau industri.
- Analytic. Workload analitik digunakan untuk menganalisis data dalam jumlah besar untuk menemukan tren, membuat prediksi, dan mendukung pengambilan keputusan bisnis. Biasanya berkaitan dengan teknologi seperti big data dan machine learning.
- High-Performance Computing (HPC). Workload HPC fokus pada komputasi berat yang butuh resource besar untuk menyelesaikan tugas dalam waktu singkat, bahkan secara real-time.
- Database. Hampir semua aplikasi enterprise pakai database. Maka workload database jadi krusial, karena performanya sangat berpengaruh ke aplikasi yang mengandalkannya.
Cloud computing juga telah melahirkan jenis workload baru seperti SaaS, aplikasi berbasis microservices, dan serverless computing.
Menentukan Lokasi Workload: Cloud vs. On-Premises
Menentukan di mana workload dijalankan adalah bagian penting dari manajemen workload. Saat ini, perusahaan bisa memilih untuk menjalankan workload di lingkungan lokal (on-prem) atau di cloud.
Secara tradisional, workload dijalankan di data center milik perusahaan, yang mencakup semua infrastruktur yang dibutuhkan. Perusahaan punya kontrol penuh terhadap konfigurasi dan operasionalnya.
Tapi sejak internet berkembang pesat, cloud jadi alternatif populer. Dalam public cloud, kita menggunakan resource milik penyedia layanan dan hanya membayar sesuai pemakaian. Penyedia cloud biasanya sudah punya sistem otomatis berbasis software-defined untuk mempermudah provisioning dan deployment.
Namun, tidak semua workload cocok dijalankan di cloud. Beberapa workload dengan kebutuhan tinggi akan throughput atau latensi rendah, seperti cluster database, lebih cocok dijalankan on-premises. Selain alasan teknis, beberapa bisnis mempertahankan workload di lokal demi business continuity atau kepatuhan regulasi seperti data residency.
Bahkan, banyak organisasi yang memilih strategi hybrid cloud, menggabungkan on-prem, private cloud, dan public cloud untuk fleksibilitas.
Kelebihan dan Kekurangan Menjalankan Workload di Cloud
Manfaat menjalankan workload di public cloud:
- Manajemen biaya. Bayar sesuai pemakaian, tanpa perlu investasi besar di awal.
- Skalabilitas. Resource bisa ditambah/dikurangi dengan mudah sesuai kebutuhan.
- Performa. Bisa deploy workload di lokasi cloud terdekat dengan user akhir untuk mengurangi latensi.
- Data residency. Cloud global memungkinkan penyimpanan data sesuai regulasi lokal masing-masing negara.
Risikonya antara lain:
- Visibilitas. Minim kontrol terhadap infrastruktur fisik penyedia cloud.
- Downtime. Kalau terjadi outage, kita tergantung pada penyedia cloud untuk menyelesaikan masalah.
- Kemitraan. Cloud adalah bisnis pihak ketiga. Layanan bisa berubah sewaktu-waktu, jadi perlu strategi cadangan.
- Keamanan. Risiko keamanan meliputi:
- Cyberattack. Akses ilegal karena password lemah atau pengaturan akses buruk.
- Misconfig. Salah konfigurasi bisa bocorkan data, contohnya pengaturan firewall yang salah.
- Shared infra. Kalau satu tenant diserang, tenant lain bisa ikut kena imbas.
Kelebihan dan Kekurangan Workload On-Premises
Keuntungan menjalankan workload di data center lokal:
- Visibilitas & kepatuhan. Punya kontrol penuh terhadap hardware, OS, dan stack software. Cocok untuk aplikasi kritis dan sensitif terhadap regulasi.
- Kontrol infrastruktur. Bisa akses semua log, troubleshoot, dan audit mandiri.
Kekurangannya:
- Biaya. Bangun dan maintain data center butuh modal besar, dari infrastruktur hingga operasional harian.
- Proteksi. Tanggung jawab sepenuhnya ada di perusahaan, mulai dari backup, HA setup, hingga disaster recovery.
Tools untuk Manajemen Workload
Tools jadi bagian penting dalam memantau dan mengelola workload, baik itu di on-prem, cloud, maupun multi-cloud.
Tools ini biasanya melacak resource, layanan, dan performa aplikasi. Admin bisa tahu workload mana yang online, resource yang digunakan, dan metrik penting seperti transaksi atau user aktif. Beberapa tools mendukung visibilitas dari satu single pane of glass.
Contoh tools manajemen workload:
- AppDynamics
- AppEnsure
- Datadog APM
- DX APM
- Dynatrace APM
- ManageEngine Applications Manager
- New Relic APM 360
- SolarWinds SAM
- Splunk ITSI
- WhatsUp Gold APM
Penyedia cloud seperti AWS dan Azure juga punya tools native seperti AWS Management Console dan Azure Portal untuk monitoring dan pengelolaan resource cloud.
Cloud computing & manajemennya membutuhkan banyak skill teknis—dari workload management hingga penguasaan berbagai bahasa pemrograman. Yuk pelajari top cloud computing skills buat berkarir di bidang ini.