Load Balancing
Load balancing adalah teknik mendistribusikan traffic jaringan ke beberapa server untuk mencegah salah satu server menerima beban berlebih yang akan mengakibatkan server down.
software-engineer
Apa itu Load Balancing?
Satu aplikasi atau web membutuhkan banyak server untuk mengisi halaman web tersebut, misalnya server untuk teks, server untuk streaming video, dan server untuk gambar.
Ketika pengguna meminta informasi terkait video, maka server video yang akan bekerja. Begitu juga dengan server yang lainnya.
Namun ketika terlalu banyak permintaan atau orang yang mengakses web tersebut dalam satu waktu, server menerima terlalu banyak beban kerja sehingga server menjadi down.
Untungnya saat ini masalah tersebut sudah bisa diatasi dengan load balancing. Dikutip dari Tech Target, load balancing adalah teknik mendistribusikan traffic jaringan ke berbagai server yang disebut server farm.
Misalnya load balancing dapat membantu aplikasi e-commerce untuk bisa melayani ribuan pelanggan dalam satu waktu dengan lancar tanpa mengalami gangguan.
Dengan menggunakan teknik load balancing, permintaan didistribusikan secara merata di antara server untuk mengurangi beban kerja yang diterima.
Selain mengurangi beban kerja server, load balancing juga berguna untuk mengoptimalkan kinerja, keandalan, dan kapasitas jaringan meskipun banyak permintaan yang diterima.
Mekanisme Kerja Load Balancing
Load balancing bekerja menggunakan sebuah alat yang disebut dengan load balancer. Alat ini bisa berupa software atau hardware.
Saat pengguna mengirimkan permintaan ke server, load balancer mengidentifikasi secara real time server mana yang paling sesuai dengan permintaan dari pengguna sekaligus memastikan permintaan tersebut tidak akan membebani server yang ditugaskan.
Load balancing juga menyediakan sistem failover. Jadi ketika server tersebut gagal mengerjakan tugasnya, load balancer akan mengalihkan permintaan tersebut ke server cadangan.
Jenis Load Balancing
Load balancing biasanya dikategorikan menjadi dua, yaitu berfungsi pada lapisan keempat (Layer 4) atau lapisan ketujuh (Layer 7) pada model komunikasi Open System Interconnection (OSI).
Load balancing layer 4 mendistribusikan traffic berdasarkan data transportasi, seperti alamat IP. Sedangkan load balancing layer 7 mendistribusikan traffic berdasarkan karakteristik tingkat aplikasi, seperti URL dan cookie.
Berikut beberapa jenis load balancing yang umum digunakan yaitu:
#1 Network Load Balancing
Network load balancer adalah load balancing layer 4 yang dapat menerima jutaan permintaan per detik, salah satu yang tercepat di antara tipe load balancing lainnya.
Seperti namanya, network load balancer memanfaatkan informasi lapisan jaringan seperti alamat IP untuk memutuskan ke mana permintaan tersebut harus dikirimkan.
#2 Application Load Balancing
Application load balancing termasuk dalam load balancing layer 7 dan merupakan jenis load balancing yang paling tua dan paling fleksibel.
Load balancing ini beroperasi di layer aplikasi, yang bertugas mendistribusikan permintaan berdasarkan informasi yang berasal dari URL, seperti protokol keamanan web apa yang digunakan (HTTP atau HTTPS), dan cookie website.
Karena itu application load balancing juga disebut dengan http(s) load balancing.
#3 Global Server Load Balancing
Global server load balancing berfungsi pada lapisan ke 4 dan 7, sehingga distribusi traffic ke berbagai server lebih efisien dan beban kerja jauh lebih berkurang.
Ketika salah satu server atau database tidak bisa digunakan, server lain bisa digunakan untuk kelangsungan bisnis. Pemulihan server yang rusak pun bisa dengan cepat dilakukan karena tidak ada tanggungan beban yang diterima.
FAQ (Frequently Asked Question)
Apa perbedaan hardware load balancing vs software load balancing?
Seperti yang telah disebutkan sebelumnya, load balancer bisa berupa hardware maupun software.
Hardware load balancing adalah perangkat keras khusus yang ditanamkan program khusus (firmware) yang dirancang untuk menangani lalu lintas jaringan dalam skala besar.
Hardware load balancing dipasangkan pada komputer server secara manual, dan biasanya memiliki harga yang lebih mahal dan kurang fleksibel.
Sedangkan software load balancing adalah load balancer dalam bentuk program atau aplikasi yang perlu diinstal pada perangkat yang ingin digunakan.
Software load balancing tersedia dalam dua bentuk yaitu komersial dan open source, menawarkan fitur yang lebih banyak, lebih murah, dan lebih fleksibel.
Mulai karirmu dalam
software-engineer
Belajar di RevoU! Dapatkan skill digital paling in-demand langsung dari praktisi terbaik di bidangnya. Kelas online 100% LIVE, 1:1 career coaching, dan akses ke Community Hub dengan 6000+ member selamanya untuk support perkembangan karir kamu!