Ana içeriğe geç

Servis Yapıları Hakkında

Servis Yapısı ve Fonksiyonel Bileşenler​

Kurumsal İş Platformu, mikroservis mimarisi üzerine kurulu olup her bir bileşen kendi konteyner yapısı içerisinde izole ve yüksek erişilebilirlik standartlarında çalışmaktadır. Aşağıda platformun temel servisleri ve üstlendiği operasyonel görevler detaylandırılmıştır.

Platform Yönetim Bileşenleri (Core Infrastructure)​

Bu bileşenler, dijital ekosistemin güvenliğini ve temel veri trafiğini koordine eden merkez üsleridir.

  • Merkezi Kimlik Yönetimi (Identity): identity.yourdomain.com
    • İşlev: Platform genelinde kullanıcı doğrulama, dinamik yetki tanımlama ve güvenli erişim protokollerini (OIDC/JWT) yönetir.
  • Merkezi Veri Motoru (Core API): api.yourdomain.com
    • İşlev: İş mantığının (Business Logic) merkezidir. Veritabanı katmanı ile uygulama arasındaki tüm veri alışverişini ve senkronizasyonu orkestre eder.
  • Kullanıcı Deneyim Arayüzü (Web UI): web.yourdomain.com
    • İşlev: Operasyonel süreçlerin modern web standartlarında, tarayıcı tabanlı bir panel üzerinden yönetilmesini sağlayan uç noktadır.

Operasyonel Süreç ve Çıktı Yönetimi​

İşletmenin dijital kaslarını oluşturan ve iş akışlarını otomatize eden fonksiyonel modüllerdir.

  • Süreç Otomasyonu ve İş Akış Yönetimi (BPM): bpm.yourdomain.com
    • İşlev: Kurumsal hiyerarşiye uygun onay mekanizmalarını, görev atamalarını ve departmanlar arası dijital iş süreçlerini yönetir.
  • Doküman ve Form Tasarım Servisi (Printing): printing.yourdomain.com
    • İşlev: Operasyonel çıktıların (barkod, sevkiyat formları, kurumsal belgeler) standart şablonlar üzerinden dijital veya fiziksel formata dönüştürülmesini sağlar.
  • Akıllı Bildirim Katmanı (Notificator): notificator.yourdomain.com
    • İşlev: Kritik iş olaylarını ve sistem uyarılarını ilgili paydaşlara anlık (e-posta, uygulama içi) olarak ileten haberleşme köprüsüdür.

Analitik ve Genişletilebilirlik Katmanı​

  • Karar Destek ve Raporlama Sistemi: reporting.yourdomain.com
    • İşlev: Ham veriyi görselleştirilmiş stratejik bilgiye dönüştürerek veri odaklı yönetim süreçlerini destekler.
  • Platform Genişletme Modülü (Extensions): ext.yourdomain.com
    • İşlev: Standart fonksiyonlara ek olarak geliştirilen özel yeteneklerin ve üçüncü parti entegrasyonların sisteme güvenli adaptasyonunu sağlar.

Sistem İzleme ve Altyapı Optimizasyonu (Opsiyonel)​

  • Operasyonel İzleme Paneli (Logging): seq.yourdomain.com
    • İşlev: Sistem sağlığını ve uygulama günlüklerini gerçek zamanlı takip ederek proaktif bakım ve hata ayıklama imkanı sunar.
  • Asenkron Mesaj Kuyruğu (Message Broker): rabbitmq.yourdomain.com
    • İşlev: Yüksek yoğunluklu veri trafiğinde servisler arası iletişimi dengeleyerek platformun performans sürekliliğini garanti altına alır.

Servisler Arası İletişim ve Mimari İlişkiler​

Platform, yüksek performans ve hata toleransı (fault tolerance) sağlamak amacıyla karma bir haberleşme modeli kullanır. Bileşenler arasındaki veri trafiği, işin aciliyetine ve türüne göre iki ana yöntemle yönetilir.

Senkron Haberleşme (REST API / HTTP)​

Anlık yanıt gerektiren ve işlem bütünlüğünün (transaction) kritik olduğu durumlarda servisler birbirleriyle doğrudan REST API üzerinden haberleşir.

  • Kullanım Senaryosu: Bir kullanıcının sisteme giriş yapması (Web UI -> Identity) veya bir rapor verisinin anlık çekilmesi (Web UI -> Reporting).
  • Protokol: HTTP/HTTPS üzerinden JSON veri formatı kullanılır.
  • Merkezi Rol: Merkezi Veri Motoru (Core API), tüm diğer servislerin ihtiyaç duyduğu temel iş verilerini sağlayan ana sunucudur.

Asenkron Haberleşme (Message Broker - RabbitMQ)​

Sistemi yormayan, arka planda kuyruğa alınabilen ve anlık yanıt beklenmeyen işlemler için RabbitMQ üzerinden mesajlaşma yöntemi kullanılır. Bu yöntem, servislerden birinde yoğunluk olsa dahi platformun geri kalanının akıcı çalışmasını sağlar.

  • Kullanım Senaryosu:
    • Bildirimler: Bir işlem onaylandığında "Bildirim Servisi"ne mesaj atılır, servis uygun olduğunda e-postayı gönderir.
    • İş Akışları (BPM): Uzun süren hesaplamalar veya tetiklenen otomatik süreçler kuyruğa alınarak sırayla işlenir.
  • Avantajı: Bir servis geçici olarak devre dışı kalsa bile, mesajlar RabbitMQ kuyruğunda bekletilir ve servis geri geldiğinde işlem kaldığı yerden devam eder (Data Persistence).

Mimari İlişki Şeması (Trafik Akışı)​

Platforma gelen bir talebin izlediği rota şu şekildedir:

  1. Dış Katman (Entrypoint): Kullanıcı talebi Traefik Proxy tarafından karşılanır. Traefik, SSL sertifikasını (Let's Encrypt) doğrular ve talebi ilgili servise yönlendirir.
  2. Uygulama Katmanı: * Kullanıcı yetkili değilse Identity servisine yönlendirilir.
    • Kullanıcı işlem yapıyorsa Web UI üzerinden gelen talep Core API'ye iletilir.
  3. Haberleşme Katmanı:
    • Eğer işlem bir çıktı üretmekse (Fatura vb.), Core API Printing servisine API çağrısı yapar (Senkron).
    • Eğer işlem bir bilgilendirme ise, Core API RabbitMQ'ya bir mesaj bırakır ve Notificator bu mesajı kuyruktan alıp işler (Asenkron).
  4. Veri Katmanı: Tüm kalıcı veriler SQL Server üzerinde tutulur ve merkezi motor tarafından yönetilir.

Mikro ERP Entegrasyon Yönetimi​

Platform, yerel veya uzak sunucuda bulunan Mikro ERP yazılımı ile tam senkronize çalışır.

Mikro ERP ➔ Platform (Sorgulama)​

mikro-transfer-service, Mikro ERP veritabanını belirli periyotlarla sorgulayarak yeni eklenen veya güncellenen kayıtları tespit eder ve platformun merkezi veri motoruna aktarır.

Platform ➔ Mikro ERP (Olay Tabanlı)​

Platform üzerinde yapılan işlemler, Platform Genişletme Modülü (Extensions) katmanında bir olay (event) tetikler. Bu olay anlık olarak yakalanır ve ilgili veri Mikro ERP veritabanına otomatik olarak işlenir.