Mikro hizmetlerin kullanımına ilişkin yaygın argümanlardan biri daha iyi ölçeklenebilirliktir. Ama bu argümanın gerçekten geçerli olup olmadığını merak ediyorum.
Diyelim ki 10 mikro hizmetten oluşan bir uygulamamız var, bunlardan 9'u her iki örneğe (yedeklilik için) ve bunlardan biri yükü (ölçeklenebilirlik) ele almak için 4 örneğe sahip. Mikroservis yanlısı argüman, o zaman bu miroserviyi diğer hizmetlerden bağımsız olarak ölçekleyebilmenizdir.
Bununla birlikte, 10 mikro hizmetin hepsinin tek bir monolit içindeki modüller olduğunu ve bu monolitin birkaç örneğinin (örneğin yukarıdaki toplam 22 gibi) konuşlandırıldığını varsayalım. Sistem, kritik bir parçanın yükünü kaldırabilmelidir, çünkü bunu yapmak için yeterli örnek vardır. Örnekler program mantığı gerekmiyorsa, tek dezavantajı, ikili ve gerekli RAM miktarının biraz daha büyük olması olacaktır. Ama sonra tekrar, fark çoğu durumda çok büyük olmamalıdır - en azından yığının geri kalanıyla karşılaştırılmamalıdır (Spring Boot'u düşünün). Ölçekli bir monlitin tepesi, dağıtılmış bir sistemin yanlışları (çoğu) olmadan daha basit bir sistem olacaktır.
Bir şey mi kaçırıyorum?