Skip to content

M14 · Bab 2± 45 menitDraf AI

Service Discovery dan Load Balancing

Tujuan belajar

  • Menjelaskan kenapa alamat service di sistem terdistribusi bersifat dinamis
  • Membedakan client-side dan server-side discovery beserta trade-off-nya
  • Menyiapkan Eureka server dan client, lalu memanggil service lewat @LoadBalanced RestClient.Builder
  • Memahami health check, heartbeat, dan deregistrasi instance
  • Memilih antara Eureka dan discovery bawaan Kubernetes (Service + DNS)

Prasyarat: API Gateway dengan Spring Cloud Gateway

Kuis

5 soal · lulus bila minimal 70% benar

1.Registry berisi 3 instance inventory-service. Load balancer round-robin sudah melayani 4 panggilan, lalu instance kedua dikeluarkan dan posisi counter tetap 4. Instance mana yang dipilih panggilan ke-5 bila daftar tersisa [inv-1, inv-3]?
2.Kode memanggil restClient.get().uri("http://inventory-service/stock/SKU-1") dan gagal dengan UnknownHostException: inventory-service, padahal service terdaftar di Eureka. Penyebab paling mungkin?
3.Aplikasi sudah berjalan di Kubernetes dan semua service hanya berkomunikasi di dalam cluster. Pilihan discovery yang paling sederhana?
4.Sebuah instance order-service mati mendadak (kill -9). Selama beberapa puluh detik sebagian request dari gateway masih diarahkan ke instance itu. Kenapa?
5.Apa perbedaan utama client-side discovery dibanding server-side discovery?

Jawab semua soal dulu (0/5)