mikroservis mi monolit mi sorusu bizde nasıl sonuçlandı
Neden geçmiştik: ekip büyüyordu, yayınlar birbirini bekliyordu, tek bir hata bütün sistemi durduruyordu. Sebepler gerçekti.
Ne oldu: on dört servise böldük. İlk altı ay harika gitti. Sonra şunlar başladı.
Yerel geliştirme ortamı kurmak yarım gün sürer oldu. Yeni gelen biri ilk haftasını kurulumla geçiriyordu.
Basit bir özellik üç servisi değiştirmeyi gerektiriyordu ve üç ayrı yayın koordinasyonu demekti.
Hata ayıklamak zorlaştı. İstek dört servisten geçiyordu ve nerede bozulduğunu bulmak için dağıtık izleme kurmamız gerekti.
Veri tutarlılığı sorun oldu. Tek veritabanında basit olan işlem, servisler arasında karmaşık bir koordinasyona dönüştü.
Altyapı maliyeti üç katına çıktı.
Geçen yıl ne yaptık: birbirine çok bağımlı olan altı servisi tekrar birleştirdik. Gerçekten bağımsız olan ve farklı ölçekleme ihtiyacı olan dördünü ayrı bıraktık.
Şimdiki kuralımız şu: bir parçayı ayırmak için üç şartın olması gerekiyor. Farklı ekip sahipleniyor olmalı, farklı ölçekleme ihtiyacı olmalı ve veri sınırı net olmalı.
Üçü yoksa ayırmıyoruz. Modüler bir monolit, kötü bölünmüş mikroservisten her açıdan iyi.

@fakazli