BACK-END APPS: TIMERS & BATCH PROCESSING EĞİTİMİ

Zamanlanmış ve toplu işleri güvenle çalıştırın

@Schedule, TimerService, Jakarta Batch job XML, chunk ve batchlet, checkpoint, yeniden başlatma ve JBeret ile toplu işleme.

Bu eğitim, arka uç uygulamalarda zamanlanmış görevler ve toplu işleme için Jakarta platformunun sunduklarını anlatır. EJB TimerService ve @Schedule, takvim ifadeleri, kalıcı zamanlayıcılar ve küme davranışı, ManagedScheduledExecutorService, Jakarta Batch (JSR…

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

Eğitim Hakkında

Jakarta EE'de zamanlayıcılar ve Jakarta Batch ile toplu işleme

Bu eğitim, arka uç uygulamalarda zamanlanmış görevler ve toplu işleme için Jakarta platformunun sunduklarını anlatır. EJB TimerService ve @Schedule, takvim ifadeleri, kalıcı zamanlayıcılar ve küme davranışı, ManagedScheduledExecutorService, Jakarta Batch (JSR 352) ile job XML, chunk-oriented step (reader, processor, writer), batchlet, checkpoint, hata atlama ve yeniden deneme, partition ve JBeret ile işlerin izlenmesi uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; 1. günde Zamanlayıcılar ve 2. günde Jakarta Batch ile Toplu İşleme ve 3. günde Ölçekleme, İzleme ve Uygulama ele alınır, her modül uygulamalı çalışmayla pekiştirilir.

Seviye

Orta Seviye — Jakarta EJB Timer, ManagedScheduledExecutor, Jakarta Batch (JSR 352), chunk işleme ve yeniden başlatma

Öğrenme Metodu

CSV dosyasından büyük hacimli kayıtları veritabanına aktaran, hata atlayabilen ve yeniden başlatılabilen bir Jakarta Batch işi geliştirilir.

Neden Bu Eğitim?

🎯Zaman Kontrolü

Cron benzeri takvim ifadeleriyle görevleri doğru zamanda ve doğru kümede çalıştırırsınız.

⚙️Büyük Veri Hacmi

Chunk ve checkpoint ile milyonlarca kaydı bellek taşırmadan işlersiniz.

🚀Yeniden Başlatılabilirlik

Hata sonrası işi baştan değil, kaldığı yerden sürdürürsünüz.

Anahtar Konular

Jakarta BatchJSR 352EJB Timer@ScheduleJBeretchunk processingtoplu işzamanlanmış görevcheckpointETL Java
“İyi bir toplu iş, gece yarısı yarıda kesilse de sabah kaldığı yerden devam edebilen iştir.”

Ön Koşullar

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

1
Java Bilgisi

JDBC ve dosya işleme temel düzeyde bilinmelidir.

2
Jakarta EE

CDI ve EJB hakkında temel deneyim faydalıdır.

3
SQL

Toplu insert ve sorgu mantığı bilinmelidir.

4
Ortam

JDK 17+, Maven ve WildFly (JBeret dahil) kurulu olmalıdır.

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ı zamanlanmış görevleri doğru mekanizmayla kurar ve küme davranışını yönetir.
Modül 1
Zamanlama Seçenekleri
  • Zamanlayıcı seçenekleri: EJB Timer, ManagedScheduledExecutor, Quartz, cron
  • Kullanım senaryolarına göre seçim ölçütleri
  • Zaman dilimi, yaz saati ve gün kayması
  • Gecikmiş çalıştırma (misfire) davranışı
  • Zamanlama doğruluğu ve beklentiler
  • Çalıştırma günlüğü ve izleme gereksinimi
Modül 2
EJB TimerService
  • @Schedule ve @Timeout ile otomatik zamanlayıcı
  • ScheduleExpression: second, minute, hour, dayOfWeek alanları
  • Programatik timer: createTimer, createCalendarTimer
  • Kalıcı (persistent) zamanlayıcı ve sunucu yeniden başlatma
  • Timer bilgisi, iptal ve listeleme
  • İşlem davranışı ve istisna sonrası yeniden deneme
Modül 3
Küme ve Eşzamanlılık
  • Kümede aynı görevin çift çalışması sorunu
  • Singleton timer ve HA singleton
  • Veritabanı kilidi veya dağıtık kilit ile tek çalıştırma
  • Görev uzun sürerse çakışma önleme
  • Timer'da ManagedExecutor ile ağır işi devretme
  • Zamanlayıcı testi: sahte saat ve doğrudan çağırma
Modül 4
ManagedScheduledExecutorService
  • schedule, scheduleAtFixedRate, scheduleWithFixedDelay
  • Trigger arayüzü ile özel zamanlama
  • Bağlam yayılımı ve güvenlik
  • Hata sonrası görevin durmaması için try/catch
  • EJB Timer ile karşılaştırma
  • Örnek: önbellek yenileme ve temizlik görevi
Günün hedefiKatılımcı Jakarta Batch işi tasarlar, hata yönetir ve izler.
Modül 1
Jakarta Batch Mimarisi
  • JSR 352 / Jakarta Batch modeli: Job, Step, Chunk, Batchlet
  • Job XML yapısı ve META-INF/batch-jobs
  • JobOperator, JobExecution ve StepExecution
  • JBeret ve WildFly batch-jberet alt sistemi
  • İş deposu (job repository) ve JDBC kalıcılığı
  • Job parametreleri ve properties
Modül 2
Chunk Odaklı Adımlar
  • ItemReader, ItemProcessor, ItemWriter arayüzleri
  • Chunk boyutu (item-count) ve işlem sınırı
  • Checkpoint algoritması ve açık/kapalı yaşam döngüsü
  • Dosya okuyucu (CSV) ve JDBC yazıcı örnekleri
  • Veri doğrulama ve dönüştürme işlemcisi
  • Toplu insert performansı ve bellek yönetimi
Modül 3
Batchlet, Akış ve Karar
  • Batchlet ile tek seferlik görev (temizlik, dosya taşıma)
  • Flow, split ve decision öğeleri
  • Adımlar arası veri aktarımı: step-level ve job-level context
  • Önkoşul ve koşullu çalışma
  • Listener'lar: JobListener, StepListener, ChunkListener
  • Paralel adımlar ve bağımlılık yönetimi
Modül 4
Hata Yönetimi ve Yeniden Başlatma
  • skippable-exception-classes ve skip-limit
  • retryable-exception-classes ve retry-limit
  • no-rollback istisnaları
  • Başarısız işin restart ile sürdürülmesi
  • Checkpoint'ten devam etme ve idempotent yazma
  • Hata kaydı ve işlenemeyen kayıt dosyası
Günün hedefiKatılımcı toplu işleri ölçekler, izler ve uçtan uca bir veri aktarım işi tamamlar.
Modül 1
Partition ve Paralellik
  • Partitioned step: PartitionMapper, Reducer, Collector, Analyzer
  • Veri bölme stratejisi: aralık, kimlik, dosya
  • Thread sayısı ve veritabanı kilit çekişmesi
  • Split ile paralel adımlar
  • Ölçeklenebilirlik sınırları ve ölçüm
  • Ağır işlerin ayrı sunucuya taşınması
Modül 2
İş Tetikleme ve Entegrasyon
  • Zamanlayıcı ile Batch işini başlatma
  • REST uç noktasından iş başlatma ve durum sorgulama
  • Mesaj (JMS) ile tetikleme
  • Dosya varışı ile tetikleme
  • Çakışan işleri engelleme
  • Güvenlik ve yetkilendirme
Modül 3
İzleme ve Operasyon
  • İş geçmişi ve JobExecution sorgulama
  • Metrikler: okunan, yazılan, atlanan kayıt sayısı
  • Alarm: başarısız iş bildirimi
  • Veri kalıcılığı ve eski execution temizliği
  • Kuyruk ve dosya birikim izleme
  • Operasyon runbook ve yeniden başlatma prosedürü
Modül 4
Uygulama Projesi: Veri Aktarım İşi
  • CSV'den veritabanına aktarım adımı
  • Doğrulama, hata atlama ve reject dosyası
  • Rapor üreten ikinci adım ve e-posta bildirimi
  • Hata enjekte edip restart ile devam
  • Performans ölçümü ve chunk ayarı
  • Kod incelemesi ve sunum

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Zamanlayıcı Seçimi

Uygun zamanlama mekanizmasını gerekçelendirebilirsiniz.

🧩
EJB Timer

@Schedule ve takvim ifadeleriyle görev kurabilirsiniz.

🛠️
Küme Güvenliği

Kümede görevin çift çalışmasını önleyebilirsiniz.

📊
Jakarta Batch

Job XML ile chunk ve batchlet adımları tanımlayabilirsiniz.

🔍
Chunk İşleme

Reader-processor-writer ile büyük veriyi bellek taşırmadan işleyebilirsiniz.

🧪
Hata Toleransı

Skip, retry ve restart ayarlarını kullanabilirsiniz.

📐
Paralel İşleme

Partition ile toplu işleri ölçekleyebilirsiniz.

🚀
İzleme

İş geçmişi ve metriklerle toplu işleri izleyebilirsiniz.

Kimler İçin Uygundur?

  • Gece toplu işleri
  • raporlama
  • veri aktarımı
  • periyodik görev geliştiren Java ve Jakarta EE yazılımcıları ile bakım ekipleri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Gece toplu işleri, raporlama, veri aktarımı ve periyodik görev geliştiren Java ve Jakarta EE yazılımcıları ile bakım ekipleri için uygundur.
Spring Batch ile farkı nedir?
Jakarta Batch standarttır ve kavramlar benzerdir; farklar karşılaştırmalı anlatılır.
Quartz kullanılacak mı?
Ana odak yerleşik mekanizmalardır; Quartz ile karşılaştırma yapılır.
Büyük veri araçlarıyla ilişkisi?
Büyük ölçek için Spark gibi araçların yeri kısaca tartışılır.
Sertifika veriliyor mu?
Programı tamamlayanlara 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. Back-end Apps: Timers & Batch Processing Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

Yazılım Geliştirme Genelİleri Seviye Back-End Developer Eğitimi
Yazılım Geliştirme Eğitimleri

İleri Seviye Back-End Developer Eğitimi

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

İleri seviye back-end developer eğitimi: API tasarımı, PostgreSQL indeks ve sorgu planı, Redis önbellek, Kafka/RabbitMQ, mikroservis, OAuth2 ve gözlemlenebilirl

Detayları Gör →
Yazılım Geliştirme Genelİş Modelleme Metodolojileri Eğitimi
Yazılım Geliştirme Eğitimleri

İş Modelleme Metodolojileri Eğitimi

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

İş modelleme metodolojileri eğitimi: BPMN 2.0, UML, IDEF0, SIPOC, DMN karar tabloları ve değer akışı haritalama ile süreç analizi ve iyileştirme uygulaması.

Detayları Gör →
Yazılım Geliştirme GenelJetpack Compose: Gestures & Animation Eğitimi
Yazılım Geliştirme Eğitimleri

Jetpack Compose: Gestures & Animation Eğitimi

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

Jetpack Compose Gestures ve Animation eğitimi: pointerInput, drag, swipe, animate*AsState, AnimatedVisibility, Transition API ve animasyon performansı uygulamas

Detayları Gör →
Yazılım Geliştirme GenelJetpack Compose: Getting Started Eğitimi
Yazılım Geliştirme Eğitimleri

Jetpack Compose: Getting Started Eğitimi

2 günBaşlangıçOnline / Yüz Yüze / Hibrit

Jetpack Compose başlangıç eğitimi: composable fonksiyonlar, Column/Row/Box, Modifier, remember state, state hoisting ve Material 3 ile ilk Android uygulaması ge

Detayları Gör →
Yazılım Geliştirme GenelJetpack Compose: Layouts & State Management Eğitimi
Yazılım Geliştirme Eğitimleri

Jetpack Compose: Layouts & State Management Eğitimi

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

Jetpack Compose Layouts ve State Management eğitimi: özel Layout, ConstraintLayout, WindowSizeClass adaptif tasarım, ViewModel, StateFlow ve side effect API'ler

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