Tüm artıları ve eksileri, nedenleri ve nedenleri, vb.Yüksek düzeyde bir genel bakış elde etmeye çalışan mikro hizmet mimarilerini araştırıyorum. Okuduğum / izlediğim bilgilerin çoğu ThoughtWorks'ten geliyor (Martin Fowler, Neal Ford, et ark).
Martin Fowler'in konuyla ilgili çalışmalarının çoğu, Microservices (programlamada bir ev ismi olarak, genel pratikte olmasa bile) hala gençken birkaç yaşındadır, bu yüzden çoğunu bir tuz tanesi ile alıyorum.
Özellikle bir şey şudur:
Bir mikro hizmet mimarisi kullanan ekiplerle ilgili hikayeler duyduğumda, ortak bir kalıp fark ettim.
- Hemen hemen tüm başarılı mikro servis hikayeleri, çok büyük ve parçalanmış bir monolit ile başladı
- Sıfırdan bir mikro hizmet sistemi olarak inşa edilmiş bir sistemi duyduğum neredeyse tüm vakalar, ciddi bir sorunla sonuçlandı.
Bu kalıp, çalışma arkadaşımın çoğunun, uygulamanızın değerli hale getirecek kadar büyük olacağından emin olsanız bile, mikro hizmetlerle yeni bir projeye başlamamanız gerektiğini savunmasına neden oldu. .
(ref: https://martinfowler.com/bliki/MonolithFirst.html - vurgulama onların)
Şimdi, 3 yıl sonra ve mikro hizmetler ile daha yaygın bir terim, genellikle yeni bir sistemin, başlamak için daha büyük (-tro-mikro-hizmet-ancak-monolitten daha küçük) servis parçalarına sahip olması ve onları evrimsel bir önlemin parçası olarak daha ayrıntılı?
Veya yukarıdaki ifadelerin aksine, bir projeyi granüler bir mikro hizmet mimarisiyle sıfırdan başlatmak için bir norm var mı?
Mantıklı bir genel yaklaşım gibi görünüyor, ancak topluluğun düşüncelerini merak ediyor.