Komponen Desain Sistem - Tugas Pertemuan 10 PPL

 Nama : Tigo S Yoga

NRP : 5025211125

Kelas : PPL A


Komponen Desain Sistem

Definisi Load Balancer
Load balancer adalah sebuah perangkat atau perangkat lunak yang bertindak sebagai proxy lalu lintas dan mendistribusikan lalu lintas jaringan atau aplikasi ke sejumlah server. Load balancer digunakan untuk mendistribusikan kapasitas selama waktu lalu lintas puncak dan meningkatkan keandalan aplikasi. Mereka meningkatkan kinerja keseluruhan aplikasi dengan mengurangi beban pada layanan atau cloud individu, dan mendistribusikan permintaan ke berbagai permukaan komputasi untuk membantu mempertahankan sesi aplikasi dan jaringan.

Fungsi dan Manfaat Load Balancer
  1. Distribusi Beban Kerja: Membagi lalu lintas secara merata di antara server untuk mencegah kelebihan beban pada satu server.
  2. Meningkatkan Ketersediaan dan Keandalan: Dengan mendistribusikan beban kerja, load balancer dapat meningkatkan ketersediaan layanan dengan mengalihkan lalu lintas dari server yang bermasalah atau gagal ke server yang sehat.
  3. Skalabilitas: Memungkinkan penambahan atau pengurangan server dengan mudah sesuai dengan kebutuhan beban kerja.
  4. Pemantauan Kesehatan Server: Load balancer dapat memeriksa status kesehatan server secara teratur dan memastikan hanya server yang berfungsi yang menerima lalu lintas.
  5. Keamanan: Load balancer dapat meningkatkan keamanan dengan menyembunyikan struktur internal aplikasi dari klien eksternal dan menerapkan kebijakan keamanan.
Jenis Load Balancer

Layer 4 Load Balancer (Transport Layer)

Layer 4 Load Balancer beroperasi pada layer transport dari model OSI dan mendistribusikan lalu lintas berdasarkan informasi protokol transport seperti alamat IP sumber dan tujuan serta port TCP/UDP. Load balancer ini tidak menganalisis isi paket yang lebih tinggi seperti permintaan HTTP.

Kelebihan:

  • Kinerja tinggi: Cepat dan efisien karena tidak memerlukan pemrosesan yang mendalam.
  • Skalabilitas: Dapat menangani lalu lintas dalam jumlah besar dengan latensi rendah.
  • Simplicity: Lebih mudah diatur dan dioperasikan dibandingkan dengan Layer 7 load balancer.

Kekurangan:

  • Fleksibilitas terbatas: Tidak dapat membuat keputusan routing berdasarkan konten aplikasi seperti header atau URL.
  • Kurang keamanan: Tidak dapat menangani serangan berbasis aplikasi karena hanya bekerja pada level transport.

Informasi penting:

  • Cocok untuk aplikasi yang membutuhkan latensi rendah dan throughput tinggi.
  • Contoh: AWS Network Load Balancer (NLB), HAProxy (mode TCP).

Layer 7 Load Balancer (Application Layer)

Layer 7 Load Balancer beroperasi pada layer aplikasi dari model OSI dan dapat mendistribusikan lalu lintas berdasarkan informasi yang lebih mendalam seperti URL, header HTTP, cookies, atau konten pesan. Load balancer ini sangat fleksibel dan cocok untuk aplikasi berbasis web yang kompleks.

Kelebihan:

  • Fleksibilitas tinggi: Dapat membuat keputusan berbasis konten, seperti routing permintaan ke server tertentu berdasarkan URL atau cookie.
  • Keamanan: Dapat menangani serangan berbasis aplikasi dan menyediakan fitur seperti SSL termination.
  • Advanced features: Mendukung fitur-fitur canggih seperti session persistence dan content switching.

Kekurangan:

  • Kinerja lebih rendah: Karena melakukan pemrosesan yang lebih mendalam, dapat memiliki latensi yang lebih tinggi dibandingkan Layer 4 load balancer.
  • Kompleksitas: Lebih kompleks dalam konfigurasi dan pemeliharaan.

Informasi penting:

  • Cocok untuk aplikasi web yang membutuhkan pengaturan routing yang rumit dan keamanan tinggi.
  • Contoh: AWS Application Load Balancer (ALB), Nginx, HAProxy (mode HTTP).

Global Load Balancer (GSLB)

Global Server Load Balancer (GSLB) mendistribusikan lalu lintas di antara beberapa pusat data atau wilayah geografis. GSLB meningkatkan ketersediaan dan kinerja aplikasi dengan mengarahkan pengguna ke pusat data terdekat atau paling tersedia.

Kelebihan:

  • Redundansi dan pemulihan bencana: Menyediakan failover otomatis jika salah satu pusat data mengalami masalah.
  • Kinerja: Mengurangi latensi dengan mengarahkan pengguna ke pusat data terdekat.
  • Availability: Meningkatkan ketersediaan aplikasi dengan mendistribusikan beban di beberapa lokasi.

Kekurangan:

  • Kompleksitas: Memerlukan konfigurasi dan manajemen yang lebih rumit karena melibatkan beberapa pusat data.
  • Biaya: Dapat lebih mahal karena memerlukan infrastruktur tambahan di berbagai lokasi.

Informasi penting:

  • Cocok untuk aplikasi global yang membutuhkan ketersediaan tinggi dan kinerja optimal di berbagai wilayah.
  • Contoh: Akamai, Cloudflare, AWS Global Accelerator.

Application Load Balancer



Application Load Balancer (ALB) adalah jenis Layer 7 load balancer yang dirancang khusus untuk aplikasi berbasis web dan mikroservis. ALB dapat mendistribusikan lalu lintas berdasarkan konten aplikasi seperti URL, header, dan cookies.

Kelebihan:

  • Routing berbasis konten: Dapat mengarahkan lalu lintas berdasarkan atribut aplikasi seperti URL path atau HTTP headers.
  • Advanced features: Mendukung fitur seperti SSL termination, session persistence, dan WebSockets.
  • Microservices friendly: Ideal untuk arsitektur mikroservis yang memerlukan routing cerdas dan pengaturan yang granular.

Kekurangan:

  • Kinerja lebih rendah: Latensi mungkin lebih tinggi dibandingkan load balancer berbasis layer yang lebih rendah karena pemrosesan yang lebih mendalam.
  • Kompleksitas: Memerlukan konfigurasi yang lebih detail dan pemeliharaan yang lebih intensif.

Informasi penting:

  • Cocok untuk aplikasi modern yang memerlukan pengaturan routing yang kompleks dan dukungan untuk fitur web canggih.
  • Contoh: AWS Application Load Balancer (ALB), Nginx, F5 BIG-IP (dalam mode Layer 7).

Komentar

Postingan populer dari blog ini

EAS PPL

Software Architecture - Tugas Pertemuan 4 PPL

Perancangan Berbasis Obyek - Tugas Pertemuan 3 PPL