Mikro servisler (hizmetler) Nedir?
Mikro hizmetler, eksiksiz uygulamalar sunmak için diğer hizmetlerle birlikte uyan küçük, esnek, modüler yazılım birimleridir. Uygulama, bir iş işlevini yerine getirmek için birlikte çalışan bağımsız hizmetlerden oluşan bir koleksiyondur. Bu yazılım yapılandırma, geliştirme ve işletim yöntemi, daha küçük bağımsız hizmetlerden oluşan bir koleksiyon olarak mikro hizmet mimarisi olarak bilinir.
Mikro hizmetler, eksiksiz uygulamalar sunmak için diğer hizmetlerle birlikte uyan küçük, esnek, modüler yazılım birimleridir. Uygulama, bir iş işlevini yerine getirmek için birlikte çalışan bağımsız hizmetlerden oluşan bir koleksiyondur. Bu yazılım yapılandırma, geliştirme ve işletim yöntemi, daha küçük bağımsız hizmetlerden oluşan bir koleksiyon olarak mikro hizmet mimarisi olarak bilinir.
Bir mikro hizmet yaklaşımı kullanan DevOps ekipleri, uygulamaları büyük, toplu bir birim olarak göndermek yerine hizmetleri işlevsel uygulama programlama arayüzlerine (API’ler) böler. API’ler, uygulamaların iletişim kurmasına ve verileri paylaşmasına olanak tanıyan temel işlevselliğe sahip hizmetleri birbirine bağlar.
Birincil avantaj, onları geliştirmekten ve sürdürmekten sorumlu DevOps ekiplerinin daha küçük birimlerde çalışabilmesi ve her projenin kapsamını daha yönetilebilir hale getirmesidir.
Mikro hizmetlerin en yaygın özelliklerinden birkaç tanesi:
- Son derece sürdürülebilir ve test edilebilir.
Mikro hizmetler çevik geliştirmeyi ve hızlı hizmet dağıtımını destekler.
- Gevşek bir şekilde bağlanmıştır.
Minimum bağımlılıklarla, bir hizmetteki tasarım, uygulama veya davranıştaki değişiklikler diğer hizmetleri etkilemeyecektir.
- Otonomdur.
Her hizmet dahili olarak kendi mantığını kontrol eder.
- Bağımsız olarak konuşlandırılabilir.
Kod, tam uygulamayı etkilemeden farklı dillerde yazılabilir ve tek bir hizmette güncellenebilir.
- İş odaklıdır.
Kuruluşlar, iş taleplerine göre mikro hizmetler dağıtır. Ek olarak, bunları ek dağıtımlar için bir yapı taşı olarak kullanabilirler.
Mikro hizmetler, mikro hizmetleri yönetmeye ve otomatikleştirmeye yardımcı olmak için Kubernetes ve Docker gibi kapsayıcı tabanlı düzenleme platformları veya AWS Lambda, Azure Functions ve Google Cloud Functions dahil olmak üzere cloud-native function-as-a-service (FaaS) teklifleri kullanılarak çalıştırılır.