Design Principles
Mikroservis mimarisi, modern uygulama geliştirme için en popüler seçim haline geldi. Bazı sorunları çözse de sihirli değnek değildir. Dezavantajları vardır ve bu mimariyi kullanırken ele alınması gereken çok sayıda sorun vardır. Bu, bu problemlerdeki yaygın patternleri öğrenme ve reusable çözümlerle çözme ihtiyacını doğurur. Bu nedenle, mikrosevisler için design patternlerin tartışılması gerekir. Design patternlere dalmadan önce, mikroservis mimarisinin hangi prensipler üzerine inşa edildiğini anlamamız gerekir:
Decentralization (Merkeziyetsizlik)
Decentralization Türkçe’de merkezi olmama durumudur. Yazılım mimarisi dünyasında da aynı şekilde bir merkeze bağlı olmama, sorumluluğun dağıtılması anlamına gelir.
Sistem içindeki bütün işlerin tek bir merkez tarafından yönetilmeyeceği ve kontrol edilmeyeceği anlamına gelen bir sorumluluk dağılımıdır.
Bu prensibe göre mikroservis hangi teknolojiyi kullanıyor olursa olsun tek bir göreve sahip olmalıdır ve kendi bireysel yönetim planı olmalıdır.
Mikroservis tabanlı uygulamalarda veri yönetiminden iş akışlarının çalıştırılmasına kadar her yönden decentralization gerçekleşmelidir. Bu prensip mikroservislerin veri, geliştirme, operasyonel işler veya ekip çalışmalarında yüksek derecede bağımsızlık sergilemesi gerektiğini belirtir.