Load Balancing: Pengertian, Fungsi dan Cara Kerjanya pada Server

Pengertian Load Balancing
Load balancing adalah proses pendistribusian traffic jaringan ke beberapa server. Ini untuk memastikan salah satu server tidak menanggung terlalu banyak beban permintaan.

Server website yang kelebihan beban membuat proses muat halaman menjadi lambat, atau bahkan tidak terhubung sama sekali.

Secara sederhana, berikut prinsip kerja load balancing:

  • Mendistribusikan permintaan klien atau beban jaringan secara efisien di beberapa server. Dengan pemerataan distribusi, website atau aplikasi menjadi lebih tanggap dan stabil ketika diakses oleh pengguna.
  • Memastikan ketersediaan dengan mengirimkan permintaan hanya ke server yang sedang online
  • Memberikan fleksibilitas untuk menambah atau mengurangi server sesuai permintaan

Cara Kerja Load Balancing
Apapun bentuknya, perangkat load balancing mendistribusikan traffic ke beberapa server untuk memastikan tidak ada satu server pun yang menanggung beban berlebih. Secara efektif, load balancing meminimalkan waktu respon server.

Fungsi load balancing sama seperti polisi lalu-lintas yang bertugas mencegah kemacetan dan insiden di jalanan yang tidak diinginkan. Load balancer harus bisa memastikan arus lalu-lintas jaringan tetap lancar sekaligus memberi rasa aman dalam sistem kerja jaringan yang rumit.

Secara sederhana, berikut cara kerja load balancing:

  • Pengguna meminta akses masuk server website / aplikasi
  • Load balancer menerima dan mendistribusikan traffic ke beberapa server
  • Jika satu server down, perangkat ini mengalihkan traffic ke server lain yang tersedia

Load balancing menjadi metode paling terukur dalam menangani banyaknya permintaan akses dari alur kerja multi aplikasi dan multi perangkat. Dengan akses tanpa batas dunia digital saat ini, load balancing memastikan pengalaman pengguna yang lebih baik.

Jenis Load Balancing
Setelah mempelajari pengertiannya, yuk kita lanjutkan ke jenis load balancing. Berdasarkan konfigurasinya, terdapat tiga jenis load balancing: hardware, software, dan virtual load balancer.

Hardware Load Balancer
Sesuai dengan namanya, ini merupakan load balancer berbentuk perangkat keras. Alat ini dapat mendistribusikan traffic sesuai dengan pengaturan yang dilakukan.

Karena berbentuk fisik, load balancer ini harus diletakkan di bersama dengan server di pusat data lokal. Jumlah load balancer disesuaikan dengan traffic tertinggi yang diinginkan.

Biasanya, load balancer ini sanggup menangani traffic dalam jumlah besar. Meski demikian, load balancer fisik memiliki harga yang terbilang mahal. Belum lagi, alat ini tidak sefleksibel versi software-nya.

Software Load Balancer
Sebagaimana transisi jaman fisik ke digital, era load balancer fisik mulai tergantikan oleh versi perangkat lunak. Lewat instalasi di server aplikasi atau virtual machine, Anda sudah memiliki alat penyeimbang beban server.

Secara ekonomi, perangkat lunak load balancer lebih terjangkau dibandingkan load balancer fisik. Versi perangkat lunak ini juga lebih fleksibel. Saat server menerima permintaan akses yang lebih besar, Anda dapat mengubah load balancer ini sesuai kebutuhan.

Terdapat dua jenis load balancer perangkat lunak, komersial dan open source. Dua jenis ini dapat menjadi alternatif Anda dibandingkan load balancer fisik.

Hardware Load Balancing vs Software Load Balancing
Secara bentuk, hardware load balancing dan software load balancing jelas berbeda. Hardware load balancing membutuhkan ruang untuk menyusun dan menempatkan peralatan. Sedangkan software load balancing cukup diinstal pada server atau virtual machine.

Selain dari bentuknya, berikut perbandingan antara hardware dan software load balancing:

Hardware Load Balancing

KelebihanKekurangan
Bekerja lebih cepat karena program berjalan menggunakan prosesor khusus Membutuhkan perawatan yang secara fisik
Lebih aman karena hanya perusahaan yang dapat mengaksesTidak dapat diubah secara fleksibel
 Harga yang lebih mahal dari software

Software Load Balancing

KelebihanKekurangan
Dapat diatur ukurannya sesuai kebutuhanKemungkinan terjadi delay saat konfigurasi program load balancing
Biaya lebih hemat karena tidak harus membeli alat fisiknya 
Dapat diaplikasikan ke cloud computing

5 Metode Load Balancing
Secara teknis, load balancing memiliki beberapa metode yang menggunakan berbagai algoritma berbeda. Yuk simak penjelasannya di bawah ini.

1. Round Robin
Round Robin adalah metode yang paling banyak digunakan dalam algoritma load balancing. Metode ini cocok untuk server dengan spesifikasi yang sama dan tidak banyak koneksi yang terus menerus.

Metode ini merotasi server dengan mengarahkan traffic ke server pertama yang tersedia. Traffic berikutnya akan diarahkan ke server kedua, dan berlaku seterusnya tergantung jumlah server yang tersedia.

Misal perusahaan Anda memiliki dua server, maka permintaan klien pertama akan didistribusikan ke server pertama. Permintaan klien kedua akan didistribusikan ke server kedua. Sedangkan permintaan klien berikutnya akan kembali ke server pertama, dan seterusnya.

Sayangnya algoritma Round Robin tidak mempertimbangkan beban dan karakteristik masing-masing server. Metode ini mengasumsikan bahwa tiap server memiliki kemampuan, jenis dan karakteristik yang sama.

2. Least Connection
Algoritma Least Connection adalah metode yang mengevaluasi kekurangan Round Robin dalam membaca beban tiap server. Metode Least Connection menjaga distribusi traffic yang merata di semua server yang tersedia. Jika sebuah server memiliki beban koneksi yang besar, permintaan data akan didistribusikan ke server yang lebih luang.

Saat terjadi permintaan, Least Connection berusaha mendistribusikannya ke server dengan jumlah koneksi paling kecil. Hal ini dilakukan untuk menghindarkan overload pada server karena besarnya traffic yang diterima.

3. Least Response Time
Versi lebih canggih dari metode Least Connection adalah Least Response Time. Metode ini menggunakan dua cara dalam distribusi permintaan data klien. Saat terjadi permintaan data, load balancer mengarahkan traffic ke server dengan koneksi aktif terkecil dan waktu respon paling cepat.

Mengetahui kecepatan respon server membantu pengguna mengetahui beban sebuah server. Selain itu, proses ini dapat menjadi gambaran user experience saat mengakses website.

4. Least Bandwidth
Berikutnya adalah metode Least Bandwidth, salah satu metode load balancing yang cukup sederhana. Metode ini mencari server yang melayani jumlah traffic paling sedikit dalam ukuran megabit per detik (Mbps).

Saat terjadi permintaan akses data, load balancer akan mendistribusikannya ke server yang memiliki traffic Mbps paling kecil.

5. IP Hash
Metode terakhir dalam teknik load balancing adalah IP Hash. Dalam metode ini, permintaan akses data ke sebuah server ditentukan lewat berbagai data yang berhubungan dengan IP (incoming packet). Di antaranya alamat IP destinasi, port number, URL, hinggan nama domain.

Jadi secara sederhana, alamat IP klien menentukan server mana yang akan mendapatkan permintaan data.

5 Kelebihan Load Balancing
Selain menyeimbangkan traffic dan memberi pengalaman pengguna yang baik, load balancing memiliki banyak kelebihan bagi penggunanya.

1. Kemudahan Upgrade dan Downgrade
Jika Anda memiliki website, Anda harus mengunggah konten yang menarik minat pembaca. Pembaca yang semakin banyak berarti traffic yang semakin banyak pula. Lonjakan traffic berpotensi membuat situs Anda menjadi lambat bahkan gagal dimuat.

Dengan load balancing, traffic dapat tersebar di beberapa server dan lebih mudah ditangani. Administrator server dapat menaikkan atau menurunkan skala server website sesuai kebutuhan website tersebut.

2. Mempermudah Proses DIstribusi Traffic
Bagi Anda yang menggunakan load balancing untuk memelihara website di beberapa server, kegagalan operasional situs dapat dibatasi secara signifikan. Load balancing mengeliminasi proses yang tidak perlu, atau disebut redundansi.

Ketika traffic website dikirim ke dua atau lebih server dan salah satu gagal, load balancer secara otomatis akan mengalihkannya ke server lain yang tersedia. Dengan beban server yang seimbang, Anda dapat merasa aman karena server akan selalu online untuk menangani traffic website.

3. Mengurangi Downtime dan Meningkatkan Performa
Load balancing memungkinkan Anda melakukan pemeliharaan server di mana pun Anda atau perusahaan Anda berada. Ini artinya Anda bisa mengurangi sekaligus menaikkan performa website Anda.

4. Manajemen Kegagalan yang Efisien
Load balancing membantu pengguna mendeteksi kegagalan dan menanganinya dengan efisien, memastikan kegagalan apa pun tidak mempengaruhi beban server. Dengan menggunakan beberapa pusat data yang tersebar, Anda dapat memotong jalur kegagalan yang terdeteksi dan mengembalikan sumber daya ke server lain yang tidak terpengaruh.

5. Meningkatkan Fleksibilitas
Dengan beban server yang seimbang, administrator website memiliki fleksibilitas dalam menangani traffic website. Mereka dapat melakukan tugas pemeliharaan server secara bertahap tanpa mematikan aktifitas website atau menunggu waktu senggang website.

Load balancing memungkinkan Anda menyimpan beban ke satu server, sementara server lain menjalani pemeliharaan.

2 Kekurangan Load Balancing
Sementara itu, load balancing juga memiliki beberapa kekurangan. Dua di antaranya:

1. Membutuhkan Konfigurasi Tambahan
Anda harus melakukan konfigurasi tambahan untuk mempertahankan koneksi terus menerus antara klien dan server. Selain itu, Anda harus melakukan konfigurasi ulang load balancer setiap kali terjadi perubahan susunan di cluster hilir. Misal saat node ditambahkan atau dihapus.

2. Biaya yang Cukup Besar
Hal ini berlaku terutama bagi load balancer yang berupa perangkat keras. Biasanya perangkat keras load balancing menghabiskan biaya yang cukup besar dibanding perangkat lunaknya.