Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Yazı Tipi BoyutlandırıcıAa
  • Anasayfa
  • Teknoloji
    • Siber Güvenlik
    • Yapay Zeka
    • Donanım
    • Bilim
  • Yazılım
  • Savunma & İstihbarat
  • Oyun
  • Yaşam
    • Finans
    • Sinema
    • Dünyadan Haberler
  • İş Birliği
Okuma: Veri Üzerine Yazmayı Durdurun: Laravel’de Olay Kaynağı Kullanımı
Paylaş
Yazı Tipi BoyutlandırıcıAa
Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Ara
Bizi Takip Et
  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti
© 2026 Teknomers. All Rights Reserved.

Anasayfa » Veri Üzerine Yazmayı Durdurun: Laravel’de Olay Kaynağı Kullanımı

Yazılım

Veri Üzerine Yazmayı Durdurun: Laravel’de Olay Kaynağı Kullanımı

teknomers
Son güncelleme: 22 Temmuz 2026 12:42
teknomers
Paylaş
Paylaş

Geleneksel Durumun Problemi

Çoğu Laravel uygulaması standart CRUD (Create, Read, Update, Delete) mimarisine dayanır. Bir kullanıcı hesap bakiyesini değiştirdiğinde, veritabanındaki eski bakiye üzerine yazılır. Ancak, bakiye neden değiştiğini bilmeniz gerektiğinde ne olacak? Üç ay önce ortaya çıkan bir hatayı bulmak için sistemi denetlemeniz gerektiğinde?

Geleneksel veritabanları yalnızca mevcut durumu saklar. Veri unutkanlığına mağruz kalırlar. Smart Tech Devs’te mali defterler, denetim yoğun platformlar veya karmaşık kurumsal sistemler inşa ettiğimizde, durum tabanlı depolamayı terk edip Event Sourcing uygularız.

Event Sourcing Nedir?

Bir modelin mevcut durumunu saklamak yerine, Event Sourcing o modele ait geçmişte meydana gelen her değişikliği değiştirilemez bir olay dizisi olarak saklar. Mevcut durum, o olayların hepsini zamanın başlangıcından itibaren oynatarak hesaplanır.

Adım 1: Olayları Saklama

Bir accounts tablosu ve balance sütunu yerine, bir events tablomuz vardır. Para yatırıldığında bakiye güncellenmez; bunun yerine bir MoneyDeposited olayı kaydedilir.


// ❌ Geleneksel CRUD Deseni
$account = Account::find(1);
$account->balance += 500;
$account->save();

// ✅ Olay Tabanlı Desen
$accountAggregate = AccountAggregateRoot::retrieve($uuid);
$accountAggregate->depositMoney(500, 'Maaş yatırımı')
                 ->persist();

Adım 2: Projeksiyonlar (Okuma Modeli)

Bakiye, binlerce olayı okuyarak hesaplanıyorsa, bu bir API yanıtı için çok yavaş olur. İşte burada Projeksiyonlar devreye girer. Bir projektör, olaylar gerçekleştiğinde dinler ve hızlı, okunmaya uygun bir veritabanı tablosunu günceller.


namespace App\Projectors;

use App\Events\MoneyDeposited;
use App\Models\AccountProjection;
use Spatie\EventSourcing\EventHandlers\Projectors\Projector;

class AccountBalanceProjector extends Projector
{
    public function onMoneyDeposited(MoneyDeposited $event)
    {
        // Bu tablo tamamen hızlı okumak içindir.
        // Gerçek kaynak olaylar tablosudur.
        $account = AccountProjection::firstOrCreate(['uuid' => $event->aggregateRootUuid()]);
        $account->balance += $event->amount;
        $account->save();
    }
}

Mühendislik ROI

Projeksiyon tablonuz bozulursa, onu silip olaylarınızı yeniden oynatarak mükemmel bir şekilde yeniden inşa edebilirsiniz. %100 doğru bir denetim kaydına, uygulama durumunuzu geçmişte herhangi bir ana geri getirme olanağına ve ayrılmış okuma/yazma mimarilerine (CQRS) sahip olursunuz. Bu karmaşıklığı getirir, ancak doğru alanlar için büyük bir güçtür.

Kaynak: Orijinal Makale

Contents
  • Geleneksel Durumun Problemi
  • Event Sourcing Nedir?
    • Adım 1: Olayları Saklama
    • Adım 2: Projeksiyonlar (Okuma Modeli)
  • Mühendislik ROI
Laravel’de Soft Deletes: Gerçekten Silmeden Silme İşlemi
PHPLaravel ile Test Süreci Yönetimi: En İyi Uygulamalar ve Araçlar
Laravel ve React ile Sunucu Tarafında Renderleme (Inertia.js Kullanarak)
Yüksek Hacimli Laravel Uygulamaları için Redis Tabanlı İzinler: v4.0.0-beta.1
Microsoft Teams henüz bu korkunç özelliği eklemiyor
Bu Makaleyi Paylaş
Facebook Bağlantıyı Kopyala Yazdır
Paylaş
Önceki Makale Kritik Açık: Microsoft Azure DevOps’ta Gizli PR Yorumları Tehdit Ediyor
Sonraki Makale Acil: OpenAI’nin AI Modelleri Sandbox’tan Kaçtı, Hugging Face’i Hedef Aldı

Sanal Medya

FacebookBeğen
452Takip Et
PinterestSabitle
237Takip Et

Son Eklenenler

Yeni Samsung Katlanabilir Telefonlardan Hangisi Alınmalı? Fold8 Ultra, Fold8, Yoksa Flip8?
Genel
Düşünceli Kafalar İçin Assassin’s Creed Resynced Yelkeni Fırsatı
Oyun
Samsung Galaxy Unpacked 2026: 6 Heyecan Verici Gelişme
Liste
Passionfroot, ABD’deki B2B içerik pazarını büyütmek için 15M $ topladı
Yapay Zeka
RTX 5070 Oyun Laptopunda 600 Dolar İndirim! 32GB RAM ve Ryzen HX 370
Donanım
Kiralık Depolama Alanına Son: Sadece $59’a Ömür Boyu 2TB!
Siber Güvenlik
//

Siber güvenlik, yapay zeka ve savunma sanayiinden; finans ve sinema dünyasına uzanan geniş bir yelpaze. Teknomers; teknoloji, strateji ve yazılım dünyasını sade bir dille sizlerle buluşturuyor.

Kurumsal

  • Hakkımızda
  • Gizlilik politikası
  • Tanıtım Yazısı ve Backlink Hizmeti

Kategoriler

  • Teknoloji
  • Oyun
  • Sinema
  • Siber Güvenlik
  • Bilim
  • Finans
  • Dünyadan Güncel Haberler

Populer

  • TV'de Ücretsiz İzlenebilen Şifresiz Erotik Kanallar (2025 Güncel Frekans Listesi)

  • The Last of Us PC Kontrolleri: Hızlı Silah Değiştirme ve Tüm Tuşlar (2025)

  • Hogwarts Legacy'de Odaklanma İksiri Nasıl Yapılır?

Teknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor HaberleriTeknomers | Dünyadan Güncel Teknoloji | Oyun | Müzik | Film | Spor Haberleri
Bizi Takip Et
© 2026 Teknomers. All Rights Reserved.
Welcome Back!

Sign in to your account

Kullanıcı Adı veya E-posta Adresi
Şifre

Şifrenizi mi unuttunuz?