MONOLİTİK UYGULAMALARDAN MİKROSERVİSLERE GEÇİŞ EĞİTİMİ

Monoliti mikroservislere dönüştür: plan, desen, uygulama

Alan keşfinden Strangler Fig ve veritabanı ayrıştırmaya, saga'dan GitOps yayınına monolitik uygulamaların mikroservislere dönüşümünü dört günde uygulayın.

Alan keşfinden Strangler Fig ve veritabanı ayrıştırmaya, saga'dan GitOps yayınına monolitik uygulamaların mikroservislere dönüşümünü dört günde uygulayın.

4 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Monolitik uygulamaların mikroservislere dönüşümü: strateji, ayrıştırma, entegrasyon ve yayın

Bu ileri seviye eğitim, monolitik uygulamaların mikroservislere dönüşümünü stratejiden üretime yayına kadar işler. Geçişin gerekçesi ve metrikleri, ArchUnit ile bağımlılık analizi, Event Storming ile servis adayları, modüler monolit, Strangler Fig, Branch by Abstraction, veritabanı ayrıştırma ve CDC, saga ve outbox, Kafka ile olay akışı, Spring Cloud Gateway, Resilience4j, Pact ve gölge trafikle test, OpenTelemetry, Kubernetes ve Argo CD ile aşamalı yayın uygulanır.

Süre ve Format

4 Gün. Her gün dört modül; katılımcılar Geçiş Stratejisi ve Alan Keşfi → Kod ve Veri Ayrıştırma → Etkileşim ve Dayanıklılık → Test, Gözlem ve Yayın sırasıyla ilerler.

Seviye

İleri Seviye — monolitik uygulamaların mikroservislere dönüşümü: strateji, ayrıştırma, entegrasyon ve yayın.

Öğrenme Metodu

Katılımcılar örnek kurumsal bir monolitten dört gün boyunca servisler çıkarır; her adımı testler ve gözlemle doğrular.

Neden Bu Eğitim?

🏢Kurumsal Gerçekler

Ortak veritabanı, toplu iş ve oturum bağımlılığı gibi kurumsal engelleri çözersiniz.

✂️Küçük Adımlar

Riski küçük, geri alınabilir parçalara bölen bir geçiş izlersiniz.

📊Ölçülebilir Sonuç

Geçişin faydasını dağıtım sıklığı ve değişim süresiyle ölçersiniz.

Anahtar Konular

monolitten mikroservise geçişmonolitik uygulama modernizasyonuStrangler Figveritabanı ayrıştırmamikroservis dönüşümüEvent Stormingoutboxkurumsal mikroservisArgo CDmodüler monolit
“Dönüşümün başarısı, durdurmadan değiştirebilme becerisidir.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
Yazılım Geliştirme

En az bir dilde (Java, C#, Go veya Node.js) 1-2 yıllık uygulama geliştirme deneyimi faydalıdır.

2
REST ve HTTP

REST API tüketme / geliştirme ve JSON formatı konusunda temel bilgi beklenir.

3
Konteyner Aşinalığı

Docker imajı, konteyner ve docker run komutlarını bilmek labları hızlandırır.

4
Çalışma Ortamı

Docker Desktop çalıştırabilen, en az 16 GB RAM'li bir dizüstü bilgisayar önerilir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı Mikroservis ilkelerini, avantaj/dezavantajlarını ve monolit karşılaştırmasını ele alır, Geçiş yol haritası, ekip topolojisi ve risk yönetimini planlar, Bounded context, aggregate ve context map ile servis sınırlarını belirler ve Event Storming, persona ve yolculuk haritalarıyla mikroservis adaylarını keşfeder.
Modül 1
Mikroservis Temelleri ve Monolit Karşılaştırması
  • Monolit, modüler monolit, SOA ve mikroservis mimarilerinin karşılaştırılması
  • Mikroservis özellikleri: bağımsız dağıtım, tek sorumluluk, veri sahipliği ve ekip uyumu (Conway yasası)
  • Dağıtık sistem maliyetleri: ağ gecikmesi, kısmi hata, tutarlılık ve operasyonel karmaşıklık
  • Dağıtık sistemlerin sekiz yanılgısı ve CAP teoremi'nin pratik sonuçları
  • Ölçeklenme eksenleri: X, Y, Z ekseni ve Scale Cube modeli
  • Mikroservis olgunluk ön koşulları: CI/CD, izleme, otomasyon ve DevOps kültürü
Modül 2
Mikroservislere Geçiş Planı ve Organizasyon
  • Geçişin iş gerekçesi: dağıtım sıklığı, değişim süresi (lead time) ve ölçeklenme ihtiyacı ölçümleri
  • Mevcut sistem keşfi: bağımlılık haritası, veri akışı, teknik borç ve risk matrisi
  • Ekip Topolojileri: akış hizalı ekipler, platform ekibi ve bilişsel yük yönetimi
  • Platform hazırlığı: CI/CD, konteyner platformu, gözlemlenebilirlik ve ortak şablonlar (golden path)
  • Pilot servis seçimi, başarı ölçütleri ve aşamalı yayın planı
  • Yaygın geçiş hataları: dağıtık monolit, çok erken ayrıştırma, ortak veritabanı ve ekip uyumsuzluğu
Modül 3
Alan Odaklı Tasarım ve Servis Sınırları
  • Ortak dil (ubiquitous language), alt alan türleri: core, supporting, generic
  • Bounded Context tanımı ve context map ilişkileri: Shared Kernel, Customer-Supplier, Conformist
  • Aggregate, entity, value object ve domain event kavramları ile tutarlılık sınırı
  • Servis sınırlarını belirleme sezgileri: yüksek uyum, düşük bağlılık, değişim sıklığı
  • Anti-Corruption Layer ile eski sistem modelinin yeni servisten yalıtılması
  • Bir e-ticaret alanında (sipariş, stok, ödeme, kargo) sınır çizme çalıştayı
Modül 4
Event Storming ve Tasarım Odaklı Düşünme
  • Tasarım odaklı düşünme aşamaları: empati, tanımlama, fikir üretme, prototip ve test
  • Big Picture Event Storming: turuncu domain olayları, komutlar, aktörler ve politikalar
  • Process Level ve Design Level oturumları ile aggregate ve read model keşfi
  • Persona, kullanıcı yolculuğu haritası ve hizmet planı (service blueprint) çıkarımı
  • Sıcak noktalar (hotspot), belirsizlikler ve çelişen terimlerin ortak dile çevrilmesi
  • Event Storming çıktısından servis aday listesi, öncelik ve bağımlılık haritası oluşturma
Günün hedefiKatılımcı Modül sınırlarını, veritabanı ayrıştırmayı ve ortak kodun yönetimini ele alır, Strangler Fig, Branch by Abstraction ve Anti-Corruption Layer ile monoliti parça parça ayırır, Servis başına veritabanı, CQRS ve event sourcing ile veri sahipliğini yönetir ve Saga (orkestrasyon/koreografi), outbox ve telafi işlemleriyle dağıtık tutarlılığı sağlar.
Modül 1
Monolit Ayrıştırma ve Refactoring Desenleri
  • Bağımlılık analizi: Structure101, jdeps veya ArchUnit ile döngüsel bağımlılık ve modül sınırı tespiti
  • Modüler monolite geçiş: paket içi görünürlük, iç API ve modül testi
  • Servis çıkarma sırası: değişim sıklığı, ölçek ihtiyacı ve takım sahipliğine göre öncelik
  • Veritabanı ayrıştırma: yabancı anahtar kırma, görünüm (view) ile geçiş ve veri senkronizasyonu
  • Ortak kütüphaneler: dağıtık monolit riski, sürüm uyumluluğu ve paylaşılan kodun kopyalanması
  • Oturum, dağıtık işlem ve toplu iş (batch) bağımlılıklarının ayrıştırılması
Modül 2
Strangler Fig ve Kademeli Geçiş Desenleri
  • Strangler Fig deseni: proxy / gateway üzerinden trafiği yeni servise kademeli yönlendirme
  • Branch by Abstraction: soyutlama katmanı ekleyip eski ve yeni gerçeklemeyi yan yana çalıştırma
  • Anti-Corruption Layer ile eski modelin yeni servise sızmasını engelleme
  • Parallel run ve gölge trafik ile yeni servisin çıktısını eskisiyle karşılaştırma
  • Özellik bayrakları ile kademeli açma (dark launch) ve hızlı geri dönüş
  • Geçiş sırasında veritabanı: ortak şema, senkronizasyon ve veri sahipliğinin devri
Modül 3
Mikroservislerde Veri Yönetimi
  • Database-per-service deseni ve paylaşılan veritabanı anti-pattern'inin sonuçları
  • Polyglot persistence: PostgreSQL, MongoDB, Redis ve Elasticsearch seçim ölçütleri
  • CQRS: komut ve sorgu modellerinin ayrılması, okuma modeli (read model) projeksiyonları
  • Event Sourcing: olay deposu, anlık görüntü (snapshot) ve olay tekrarı (replay)
  • API Composition ile çok servisli sorgular ve veri kopyalama maliyeti
  • Veri taşıma: CDC (Debezium) ile değişikliklerin yayınlanması ve outbox deseni
Modül 4
Dağıtık İşlemler ve Saga Deseni
  • İki aşamalı onay (2PC) neden mikroservislerde önerilmez: kilitleme ve kullanılabilirlik etkisi
  • Saga türleri: koreografi tabanlı ile orkestrasyon tabanlı akışların karşılaştırılması
  • Telafi işlemleri (compensating transaction): sipariş-stok-ödeme senaryosunda geri alma adımları
  • Transactional Outbox ve Inbox desenleri ile iletinin veritabanı işlemiyle atomik yayınlanması
  • Orkestratör araçları: Camunda, Temporal, Netflix Conductor ve MassTransit state machine
  • Saga durumunun izlenmesi, zaman aşımı yönetimi ve takılı kalan akışların kurtarılması
Günün hedefiKatılımcı REST, gRPC ve mesajlaşma ile iletişim desenlerini karşılaştırır, API Gateway ile yönlendirme, kimlik doğrulama ve BFF desenini uygular, Eureka/Consul ile servis keşfi, merkezi yapılandırma ve 12-Factor ilkelerini uygular ve Circuit breaker, bulkhead, timeout ve retry desenleriyle hata yayılımını sınırlar.
Modül 1
Servisler Arası İletişim: Senkron ve Asenkron
  • Senkron iletişim: REST, gRPC (Protocol Buffers, HTTP/2) ve zaman aşımı/bağımlılık zinciri riski
  • Asenkron mesajlaşma: RabbitMQ, Apache Kafka, kuyruk ve konu (topic) modelleri
  • Olay güdümlü mimari: domain event, integration event ve event-carried state transfer
  • İleti teslim garantileri: en az bir kez, en çok bir kez ve idempotent tüketici tasarımı
  • Mesaj şema evrimi: Avro/Protobuf, Schema Registry ve geriye/ileriye dönük uyumluluk
  • Request-reply, publish-subscribe ve competing consumers desenlerinin karşılaştırılması
Modül 2
API Gateway ve BFF Deseni
  • API Gateway rolü: yönlendirme, birleştirme (aggregation), kimlik doğrulama, rate limit ve TLS sonlandırma
  • Spring Cloud Gateway, Kong, NGINX ve Envoy seçeneklerinin karşılaştırılması
  • Backend for Frontend (BFF) deseni: mobil, web ve üçüncü taraf istemciler için ayrı katmanlar
  • Gateway üzerinde JWT doğrulama, correlation ID ekleme ve istek dönüştürme filtreleri
  • Gateway'in tek hata noktası olmasını önleme: yüksek erişilebilirlik ve önbellekleme
  • GraphQL federasyonu ile gateway katmanında şema birleştirme yaklaşımı
Modül 3
Servis Keşfi ve Yapılandırma Yönetimi
  • İstemci taraflı ve sunucu taraflı servis keşfi: Eureka, Consul ve Kubernetes DNS
  • Spring Cloud LoadBalancer ile istemci taraflı yük dengeleme ve sağlık kontrolü
  • Spring Cloud Config, Consul KV veya Kubernetes ConfigMap ile merkezi yapılandırma
  • Secret yönetimi: HashiCorp Vault, Kubernetes Secrets ve şifrelenmiş yapılandırma
  • 12-Factor App ilkelerinin mikroservis bağlamında uygulanması: yapılandırma, günlük, süreçler
  • Çalışma zamanında yapılandırma yenileme (@RefreshScope) ve özellik bayrakları (feature flag)
Modül 4
Dayanıklılık Desenleri: Circuit Breaker ve Retry
  • Kademeli hata (cascading failure) senaryosu ve zaman aşımı bütçesi hesaplama
  • Circuit Breaker durumları: closed, open, half-open ve eşik yapılandırması
  • Retry stratejileri: sabit, üssel geri çekilme (exponential backoff) ve jitter
  • Bulkhead ve rate limiter ile kaynak yalıtımı; thread pool ve semaphore yaklaşımları
  • Fallback ve zarif bozulma (graceful degradation): önbellekten yanıt, varsayılan değer
  • Chaos Monkey benzeri hata enjeksiyonu ile dayanıklılık davranışının doğrulanması
Günün hedefiKatılımcı Test piramidi, tüketici güdümlü sözleşme testi (Pact) ve Testcontainers ile test yazar, Merkezi günlük, Prometheus metrikleri ve OpenTelemetry ile dağıtık izleme kurar, Docker imajı, Kubernetes Deployment/Service ve Helm ile mikroservis dağıtır ve Argo CD veya Flux ile Git tabanlı bildirimsel dağıtım ve CI/CD hattı kurar.
Modül 1
Mikroservis Test Stratejisi
  • Mikroservis test piramidi: birim, bileşen, entegrasyon, sözleşme ve uçtan uca testler
  • Tüketici güdümlü sözleşme testi: Pact ile consumer test ve provider doğrulama
  • Testcontainers ile gerçek PostgreSQL, Kafka ve Redis kullanan entegrasyon testleri
  • WireMock ve Spring Cloud Contract ile bağımlı servislerin taklit edilmesi
  • Üretimde test: canary, gölge (shadow) trafik ve özellik bayraklarıyla güvenli yayın
  • Kararsız (flaky) test nedenleri ve asenkron akışların Awaitility ile test edilmesi
Modül 2
Gözlemlenebilirlik: Günlük, Metrik ve İzleme
  • Üç sütun: günlük (log), metrik ve iz (trace); yapılandırılmış JSON günlük biçimi
  • ELK/EFK yığını veya Grafana Loki ile merkezi günlük toplama ve correlation ID
  • Micrometer ve Prometheus ile RED/USE metrikleri; Grafana panoları
  • OpenTelemetry, Jaeger/Zipkin ile dağıtık iz (span) ve bağlam yayılımı (W3C traceparent)
  • SLI, SLO ve hata bütçesi tanımı; Alertmanager ile uyarı kuralları
  • Sağlık uç noktaları: liveness, readiness ve Spring Boot Actuator yapılandırması
Modül 3
Konteyner ve Kubernetes ile Dağıtım
  • Çok aşamalı Dockerfile, küçük taban imaj ve katman önbelleği ile imaj optimizasyonu
  • Kubernetes nesneleri: Pod, Deployment, Service, Ingress, ConfigMap ve Secret
  • Kaynak istek/limitleri (requests/limits), HPA ile otomatik ölçekleme
  • Liveness, readiness ve startup probe yapılandırması; rolling update ve geri alma
  • Helm şablonları ve Kustomize ile ortam bazlı manifest yönetimi
  • Service mesh (Istio/Linkerd) ile mTLS, trafik yönetimi ve canary yayını
Modül 4
GitOps Temelleri ve Sürekli Teslimat
  • GitOps ilkeleri: bildirimsel tanım, sürümlü kaynak, otomatik çekme (pull) ve sürekli uzlaştırma
  • Argo CD Application tanımı, senkronizasyon politikaları (auto-sync, self-heal, prune)
  • CI hattı (GitHub Actions/GitLab CI) ile imaj derleme, etiketleme ve manifest deposunu güncelleme
  • Ortam stratejisi: dev/test/prod dalları veya klasörleri; Kustomize overlay ile fark yönetimi
  • Sealed Secrets veya External Secrets ile gizli bilgilerin Git'te güvenli yönetimi
  • Canary ve blue/green yayın (Argo Rollouts) ile risk azaltma ve otomatik geri alma

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Mikroservis Temelleri

Mikroservis mimarisinin ne zaman uygun olduğunu karşılaştırmalı olarak değerlendirebilirsiniz.

🧩
DDD ve Sınırlar

Bounded context ve aggregate kavramlarıyla servis sınırlarını gerekçeli biçimde çizebilirsiniz.

🛠️
Refactoring Desenleri

Monoliti modüllere ve servislere ayırmak için kod ve veritabanı refactoring desenlerini uygulayabilirsiniz.

🔐
Veri Yönetimi

Servis başına veritabanı yaklaşımında veri tutarlılığı ve sorgu ihtiyaçlarını yönetebilirsiniz.

📈
API Gateway

API Gateway ve BFF katmanıyla istemci odaklı yönlendirme ve ortak kaygıları merkezileştirebilirsiniz.

🧪
Dayanıklılık

Resilience4j ile circuit breaker, retry ve bulkhead desenlerini uygulayıp hata yayılımını sınırlayabilirsiniz.

🚀
Gözlemlenebilirlik

Günlük, metrik ve dağıtık izleme ile mikroservis davranışını uçtan uca gözlemleyebilirsiniz.

🔎
GitOps

GitOps yaklaşımıyla Git deposunu tek doğruluk kaynağı yaparak otomatik dağıtım kurabilirsiniz.

Kimler İçin Uygundur?

  • Kurumsal monolitik uygulamalardan sorumlu mimarlar
  • kıdemli geliştiriciler
  • modernizasyon projesi yöneten teknik liderler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Kurumsal monolitik uygulamalardan sorumlu mimarlar, kıdemli geliştiriciler ve modernizasyon projesi yöneten teknik liderler için uygundur.
Migrating to Microservices eğitiminden farkı nedir?
Bu eğitim dört gündür; kurumsal monolit dönüşümünü Event Storming ve GitOps yayınıyla daha geniş ve derin işler.
.NET veya PHP monolitleri için uygun mu?
Desenler dilden bağımsızdır; örnekler Java üzerinden verilir.
Kurumsal örnek getirilebilir mi?
Evet, anonimleştirilmiş mimari şemalar tartışma için kullanılabilir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir. Üçüncü taraf kurumların sınav ve sertifikalarıyla bir bağı yoktur.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Monolitik Uygulamalardan Mikroservislere Geçiş Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre4 gün
Seviyeİleri Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

API ve Mikroservis MimarisiDataFrames and the DataFrame API Eğitimi
Yazılım Geliştirme Eğitimleri

DataFrames and the DataFrame API Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

DataFrame API ile okuma, dönüştürme, birleştirme, performans ayarı ve test. 2 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiDesign Thinking for Microservices Eğitimi
Yazılım Geliştirme Eğitimleri

Design Thinking for Microservices Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Tasarım odaklı düşünme, Event Storming ve DDD ile mikroservis sınırlarının keşfi. 2 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiDesigning the Microservices Architecture Eğitimi
Yazılım Geliştirme Eğitimleri

Designing the Microservices Architecture Eğitimi

4 günİleriOnline / Yüz Yüze / Hibrit

Uçtan uca mikroservis mimarisi tasarımı: alan modeli, iletişim, veri, dayanıklılık ve dağıtım. 4 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiDeveloping Microservices (DMS) Eğitimi
Yazılım Geliştirme Eğitimleri

Developing Microservices (DMS) Eğitimi

3 günOrtaOnline / Yüz Yüze / Hibrit

Spring Boot ile mikroservis geliştirme, entegrasyon, test ve dağıtım. 3 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
API ve Mikroservis MimarisiExploring & Debugging Web API Eğitimi
Yazılım Geliştirme Eğitimleri

Exploring & Debugging Web API Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Web API'leri keşfetme ve hata ayıklama: HTTP, curl, Postman, proxy ve kimlik doğrulama. 2 gün uygulamalı eğitim, DVA Katılım ve Başarı Sertifikası.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn