Bir monoliti bölmek zordur. Mikroservisleri geri birleştirmek mi? Daha zor.

Plan:

  • İlgili şeyler yapan 10 küçük servis
  • 3 alan servisine birleştirme
  • Tahmini: 6 hafta

Gerçeklik:

  • Süre: 6 ay
  • Her yerde gizli asenkron bağımlılıklar
  • 3 farklı mesaj kuyruğu deseni
  • Şema uyumsuzlukları
  • Yalnızca ölçekte ortaya çıkan yarış koşulları

Ne keşfettik:

  • Servis A JSON bekliyordu, Servis B XML gönderiyordu
  • Servis C'nin belgelenmemiş önbellekleme varsayımları vardı
  • İki servis aynı veri konseptine farklı şekilde sahipti
  • Kimse tam bağımlılık grafiğini bilmiyordu

Dersler:

  • Servis sözleşmelerini takıntılı bir şekilde belgeleyin
  • Canlı bir bağımlılık grafiği tutun
  • Birleştirme, yeniden düzenleme değil, yeniden yazmadır
  • Strangler Fig desenini tersten düşünün

Ders: Bölme (biraz) geri alınabilir. Geri almanın maliyeti zamanla katlanır.


← Alınan Derslere Dön