SPRING BOOT MICROSERVICES: GETTING STARTED EĞİTİMİ

Spring Boot ile ilk mikroservislerinizi ayağa kaldırın

Spring Boot mikroservisleri, REST iletişimi, Eureka keşfi, Spring Cloud Gateway, Config Server ve Docker ile paketleme uygulamalı işlenir

Spring Boot ile mikroservis mimarisine giriş eğitimi; servis sınırları, REST iletişimi, Eureka keşfi, Gateway, Config Server ve Docker paketleme konularını uygulamalı işler.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Spring Boot ile mikroservis mimarisine giriş

Eğitim, monolitik bir uygulamanın Spring Boot ile mikroservislere bölünmesini adım adım işler. Bounded context ile servis sınırı belirleme, RestTemplate ve OpenFeign ile servisler arası çağrı, Eureka ile servis keşfi, Spring Cloud Gateway ile tek giriş noktası, Config Server ile merkezi yapılandırma ve Dockerfile ile imaj üretimi uygulamalı olarak ele alınır.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün Servis Tasarımı ve REST İletişimi; 2. gün Keşif, Gateway, Yapılandırma ve Paketleme.

Seviye

Orta Seviye — Spring Boot ile mikroservis tasarımından servis keşfine ve gateway'e

Öğrenme Metodu

Katılımcılar sipariş, ürün ve müşteri servislerinden oluşan örnek bir sistemi IntelliJ IDEA üzerinde yazar, Docker Compose ile birlikte çalıştırır.

Neden Bu Eğitim?

🧩Servis Sınırları

Domain'i bounded context'lere bölerek her servisin kendi verisine ve sorumluluğuna sahip olduğu bir yapı kurarsınız.

🔎Keşif ve Gateway

Eureka ve Spring Cloud Gateway ile servislerin dinamik adreslerle birbirini bulmasını sağlarsınız.

🐳Konteyner Hazırlığı

Servisleri Dockerfile ve Compose ile paketleyip tek komutla ayağa kaldırmayı öğrenirsiniz.

Anahtar Konular

spring boot microservicesmikroservis eğitimispring cloudeurekaspring cloud gatewayopenfeignconfig serverresilience4jdocker compose java
“Mikroservis, kodu bölmek değil sorumluluğu bölmektir.”

Ön Koşullar

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

1
Java ve Spring Boot

Bean, Controller ve application.properties kavramlarına temel düzeyde aşinalık beklenir.

2
Maven kullanımı

pom.xml bağımlılık yönetimi ve mvn komutları bilinmelidir.

3
REST ve JSON bilgisi

HTTP metotları, durum kodları ve JSON gösterimi tanıdık olmalıdır.

4
Geliştirme ortamı

JDK 17, IntelliJ IDEA ve Docker Desktop kurulu bir bilgisayar gerekir.

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ı bir domain'i servis sınırlarına ayırır ve Spring Boot ile birbirinden bağımsız REST servisleri geliştirir.
Modül 1
Mikroservis Mimarisi
  • Monolit ile mikroservis farklarını ve ödünleşimlerini karşılaştırma
  • Bounded context ve Domain-Driven Design ile servis sınırı çıkarma
  • Servis başına veritabanı (database per service) ilkesi
  • 12-Factor App ilkelerinin Spring Boot'ta karşılığı
  • Spring Initializr ile çok modüllü proje iskeleti oluşturma
  • Sipariş, ürün ve müşteri servislerinin sorumluluk dağılımı
Modül 2
REST Servis Geliştirme
  • @RestController, @RequestMapping ve @PathVariable kullanımı
  • DTO ile Entity ayrımı ve MapStruct dönüşümleri
  • ResponseEntity ile HTTP durum kodu yönetimi
  • Bean Validation (@Valid, @NotBlank) ile girdi doğrulama
  • @ControllerAdvice ile merkezi hata yönetimi
  • OpenAPI (springdoc) ile servis dokümantasyonu
Modül 3
Veri Erişimi
  • Spring Data JPA ile Repository oluşturma
  • H2 ve PostgreSQL profilleri arasında geçiş
  • Flyway ile şema sürümleme
  • @Transactional sınırlarını servis katmanında belirleme
  • Servisler arası tutarlılık için eventual consistency kavramı
  • Actuator ile health ve metrics uçları
Modül 4
Servisler Arası İletişim
  • RestTemplate ve WebClient ile senkron çağrı
  • OpenFeign ile bildirimsel HTTP istemcisi
  • Timeout ve retry ayarlarının belirlenmesi
  • Resilience4j ile circuit breaker temelleri
  • Fallback metotları ve kısmi hata toleransı
  • Servisler arası sözleşme ve sürümleme stratejisi
Günün hedefiKatılımcı servislerin dinamik biçimde birbirini bulduğu, merkezi yapılandırılan ve konteynerde çalışan bir sistem kurar.
Modül 1
Servis Keşfi
  • Eureka Server kurulumu ve @EnableEurekaServer
  • Eureka Client kaydı ve heartbeat mekanizması
  • Load balancing için Spring Cloud LoadBalancer
  • Feign istemcisinde servis adıyla çağrı
  • Birden çok instance çalıştırıp trafik dağılımını gözleme
  • Self-preservation modu ve kayıt gecikmeleri
Modül 2
API Gateway
  • Spring Cloud Gateway route, predicate ve filter kavramları
  • Path tabanlı yönlendirme kurallarını yazma
  • Global filter ile istek loglama ve correlation id
  • JWT doğrulamasını gateway'de merkezileştirme
  • Rate limiting için Redis RequestRateLimiter
  • CORS ayarlarının gateway'de yönetimi
Modül 3
Merkezi Yapılandırma
  • Spring Cloud Config Server kurulumu
  • Git deposundan yapılandırma okuma
  • Profil bazlı dosyalar: dev, test, prod
  • @RefreshScope ile çalışma anında yenileme
  • Hassas değerlerin şifrelenmesi (encrypt/decrypt)
  • Bootstrap ve spring.config.import farkı
Modül 4
Paketleme ve Çalıştırma
  • Çok aşamalı Dockerfile ile küçük imaj üretimi
  • Spring Boot layered jar yapısı
  • Docker Compose ile tüm servisleri birlikte kaldırma
  • Health check ve depends_on sıralaması
  • Micrometer ve Zipkin ile dağıtık izleme girişi
  • Sonraki adım: Kubernetes'e taşıma yol haritası

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Servis Sınırı Tasarımı

Bir domain'i bounded context'lere ayırıp servis sorumluluklarını belirleyebilirsiniz.

✅
REST Servisleri

Doğrulama ve merkezi hata yönetimiyle Spring Boot REST servisleri yazabilirsiniz.

✅
Feign ile İletişim

Servisler arası çağrıları OpenFeign ve timeout ayarlarıyla kurabilirsiniz.

✅
Eureka Kullanımı

Servisleri Eureka'ya kaydedip adla bulunur hale getirebilirsiniz.

✅
Gateway Yönlendirme

Spring Cloud Gateway'de route ve filter tanımlayabilirsiniz.

✅
Merkezi Yapılandırma

Config Server ile profil bazlı ayarları Git'ten yönetebilirsiniz.

✅
Dayanıklılık

Resilience4j circuit breaker ile hata yayılımını sınırlayabilirsiniz.

✅
Docker ile Çalıştırma

Servisleri Dockerfile ve Compose ile paketleyip birlikte çalıştırabilirsiniz.

Kimler İçin Uygundur?

  • Spring Boot bilen
  • mikroservis mimarisine geçmek isteyen Java geliştiriciler ile takım liderleri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Spring Boot bilen ve mikroservis mimarisine geçmek isteyen Java geliştiriciler ile takım liderleri için uygundur.
Eğitim için Spring Cloud sürümü hangisi olacak?
Güncel Spring Boot 3.x ile uyumlu Spring Cloud sürümü kullanılır; sürüm uyumluluk tablosu eğitimde birlikte incelenir.
Kubernetes bilgisi gerekir mi?
Gerekmez; servisler Docker Compose ile çalıştırılır, Kubernetes yalnızca sonraki adım olarak anlatılır.
Her servis ayrı veritabanı kullanacak mı?
Evet, database per service ilkesi uygulanır; geliştirme için H2, bir bölümde PostgreSQL kullanılır.
Eğitim sonunda sertifika verilir mi?
Katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

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. Spring Boot Microservices: Getting Started Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

Java ve JVMMultithreading and Concurrency in Java: Introduction to Concurrent Programming Eğitimi
Yazılım Geliştirme Eğitimleri

Multithreading and Concurrency in Java: Introduction to Concurrent Programming Eğitimi

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

Java eşzamanlı programlamaya giriş eğitimi: thread yaşam döngüsü, Java Bellek Modeli, volatile, synchronized, thread-safe sınıf ve Executor temelleri.

Detayları Gör →
Java ve JVMMultithreading and Concurrency in Java: Objects for Concurrent Programming Eğitimi
Yazılım Geliştirme Eğitimleri

Multithreading and Concurrency in Java: Objects for Concurrent Programming Eğitimi

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

java.util.concurrent eğitimi: ThreadPoolExecutor, CompletableFuture, ConcurrentHashMap, Atomic sınıflar, Latch/Barrier/Phaser ve test yaklaşımları.

Detayları Gör →
Java ve JVMMultithreading and Concurrency in Java: Scaling a Multithreaded Application Eğitimi
Yazılım Geliştirme Eğitimleri

Multithreading and Concurrency in Java: Scaling a Multithreaded Application Eğitimi

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

Java çok thread'li uygulama ölçekleme eğitimi: havuz boyutlandırma, virtual thread, Fork/Join, kilit çekişmesi, JFR profilleme ve backpressure.

Detayları Gör →
Java ve JVMMultithreading and Concurrency in Java: Spawning & Launching Threads Eğitimi
Yazılım Geliştirme Eğitimleri

Multithreading and Concurrency in Java: Spawning & Launching Threads Eğitimi

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

Java thread oluşturma ve başlatma eğitimi: Thread/Runnable, yaşam döngüsü, join, interrupt, istisna yönetimi, ThreadLocal ve sanal thread.

Detayları Gör →
Java ve JVMMultithreading and Concurrency in Java: Thread Synchronization & Locks Eğitimi
Yazılım Geliştirme Eğitimleri

Multithreading and Concurrency in Java: Thread Synchronization & Locks Eğitimi

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

Java thread senkronizasyonu ve kilitler eğitimi: synchronized, happens-before, ReentrantLock, StampedLock, deadlock önleme ve CAS teknikleri.

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