3. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...
4. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık…
5. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...
6. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC,DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...
7. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC,DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi
yine... Business karışmaya başladı...
8. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi
yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....
9. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi
yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu
arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın.
Tam SOA oldu galiba, yani sanırım...
10. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi
yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu
arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın.
Tam SOA oldu galiba, yani sanırım...
11. Uygulama Anatomisi
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce
katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama
yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim
azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir
tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi
yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu
arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın.
Tam SOA oldu galiba, yani sanırım...
12. Monolithic Uygulamalar
.Tüm fonksiyonlar tek bir "process" altında...
.Merkezileştirilmiş bir yapısı...
.Deployment kolay, uygulumana büyüdükçe riskli...
.Uygulama büyüdükçe geliştirme zorlaşıyor...
.Teknolojiye bağımlı hale geliniyor...
."Scale" etmek başta kolay, ama sonra imkansız...
13. Monolithic Uygulamalar
.Tüm fonksiyonlar tek bir "process" altında...
.Merkezileştirilmiş bir yapısı...
.Deployment kolay, uygulumana büyüdükçe riskli...
.Uygulama büyüdükçe geliştirme zorlaşıyor...
.Teknolojiye bağımlı hale geliniyor...
."Scale" etmek başta kolay, ama sonra imkansız...
Uygulamayı servislere bölmek...
14. Microservices vs. SOA
SOA
«Service-oriented architecture (SOA) is a software design and software architecture
design pattern based on distinct pieces of software providing application functionality
as services to other applications. This is known as service-orientation. It is
independent of any vendor, product or technology»
Wikipedia
Microservices
...functionality independent, distinct pieces of software as services....
15. Microservices vs. SOA
.Servis odaklı mimari(SOA) için alternatif bir mimari tasarım kalıbı değil...
.SOA mimarisinde uyguluma geliştirmek için tercih edilebilecek bir mimari tasarım
stili...
.Kompleks mesajlaşma alt yapısı, web servis standartları yerine «lightweight»
çözümler...
– ESB yerine daha «basit» mesajlaşma yapıları...
– SOAP vs. REST
«Microservices is a specific flavour of SOA, due to unique features, it deserves a name.»
Martin Fowler
16. Bir SOA stili, Microservices...
.Tek başına, ayrık çalışan ve «Single Responsibility» prensibine sahip servislerdir.
.«Business Capability» durumlarına göre ayrıştırılmış servislerdir.
.Çok küçük sayıda, sadece «bir tane» sorumlulukları vardır...Onu da çok iyi yaparlar.
17. Microservices
«Bağımsız Servisler»
Development
Tek bir teknolojiye bağlı olmak zorunda değil...
Data
Veri yönetimleri farklı olabilir...RDMS, Graph Database...vs.
Business
İhtiyaçlar birbirlerinden ayrı geliştirilebilir...
Deployment
Birbirlerinden bağımsız, herhangi bir zamanda deploy edilebilirler...
18. Getirdikleri
.Kolay
Değiştirmek
Deployment
.Bağımsız
Dil
Platform
Framework
.Scale edilebilir uygulamalar
.Test edilebilir uygulamalar
.Hızlı uygulama geliştirme
.Proje vs. Ürün
19. Microservices
«No Silver Bullet»
.«No Silver Bullet»
.Fonksiyonlar iyi ayrıştırılamazsa, içerideki karmaşıklık dışarıda, servisler arasında da olur
.Servisler çok küçülmemeli. Nano-servisler olmamalı
.Tecrübeli takımlar/kişiler mutlaka olmalı
."Deployment" yöntemleri net ve sağlıklı bir şekilde otomatikleşmiş olmalı
."DevOps" kültürü olmalı
.Versiyonlama çok iyi yönetilmeli
.Uygulama ve servis monitör yöntemleri oturmuş olmalı
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık…
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC,DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC,DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi yine... Business karışmaya başladı...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın. Tam SOA oldu galiba, yani sanırım...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın. Tam SOA oldu galiba, yani sanırım...
İhtiyaçları topladık, biri sürü fonksiyon var...Web uygulaması gibi sanki...Çok güzel...Önce katmanlarımızı oluşturmalıyız... UI-Business-Data falan filan...Neden, çünkü N-Layer(?) uygulama yapıyoruz, şahane...Yeni fonksiyonlar da geldi...IoC, DI falan bunlardan da serpelim azıcık...Modüllerimiz de olsun...Uygulamamızı çok sevdiler, entegre olup kullanmak istiyorlar. Bir tane Service Layer olsun, servisler yazalım... SOA oluyor galiba(!!!), çok güzel...Yeni ihtiyaçlar geldi yine... Business karışmaya başladı... Tam 100 satırlık bir Stored Procedure zamanı....Neyse bu arada içeri bir tane ESB koyalım, mesajlaşma standartlarım da olsun ki soran olursa eksik olmasın. Tam SOA oldu galiba, yani sanırım...
.Tüm fonksiyonlar tek bir "process" altında...
.Merkezileştirilmiş bir yapısı...
.Deployment kolay, uygulumana büyüdükçe riskli...
.Uygulama büyüdükçe geliştirme zorlaşıyor...
.Teknolojiye bağımlı hale geliniyor...
."Scale" etmek başta kolay, ama sonra imkansız...
SOA
«Service-oriented architecture (SOA) is a software design and software architecture design pattern based on distinct pieces of software providing application functionality as services to other applications. This is known as service-orientation. It is independent of any vendor, product or technology»
Wikipedia
Microservices
...functionality independent, distinct pieces of software as services....