0Pricing
C# Academy · Ders

Mesajlaşma Kavramları

Komutları, olayları ve kuyrukları anlayın.

Mesajlaşma Kavramları, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 4 dersten oluşur.

Mesajlaşma Neden Kullanılır

Asenkron mesajlaşma, hizmetlerin birbirini doğrudan çağırmadan iletişim kurmasını sağlar. Bir üretici bir ileti bırakır, bir tüketici de bu iletiyi daha sonra alır. Bu yaklaşım hizmetleri birbirinden bağımsızlaştırır, ani yük artışlarını dengeler ve bir tüketici kısa süreliğine kullanılamadığında sistemi dayanıklı tutar.

MassTransit Nedir

MassTransit, RabbitMQ veya Azure Service Bus gibi ileti aracılarının üzerinde çalışan bir .NET çerçevesidir. Serileştirme, yönlendirme, yeniden deneme ve diğer işlemleri üstlenerek aracı altyapısı yerine iletilere ve işleyicilere odaklanmanızı sağlar.

dotnet add package MassTransit

Komutlar ve Olaylar

İki ileti amacı önemlidir. Bir komut, belirli bir hizmete bir şey yapmasını söyler ("ChargePayment"). Bir olay, ilgili herkese bir şeyin gerçekleştiğini bildirir ("OrderPlaced"). Komutların tek bir işleyicisi, olayların ise birden çok işleyicisi vardır.

Komut Modelleme

Komut, emir kipinde adlandırılmış basit bir ileti türüdür. Bunu tek bir tüketiciye gönderin.

public record ChargePayment(
    Guid OrderId,
    decimal Amount);

Olay Modelleme

Olay, geçmiş zamanda adlandırılır ve ilgili tüm abonelere yayımlanır.

public record OrderPlaced(
    Guid OrderId,
    string CustomerEmail);

Kuyruklar

Bir kuyruk, bir tüketici işleyene kadar iletileri tutar. Noktadan noktaya çalışır: her ileti tam olarak bir tüketiciye teslim edilir ve tüketici örnekleri arasında yük dengelemesi (yarışan tüketiciler) sağlanır.

Değişimler ve Konular

RabbitMQ gibi aracılar, değişimler üzerinden yönlendirme yapar. Bir üretici bir değişime ileti yayımlar; değişim de iletiyi kendisine bağlanmış tüm kuyruklara dağıtır. Tek bir olayın birçok aboneye ulaşması bu şekilde sağlanır.

MassTransit Bunları Nasıl Kullanır

MassTransit, ileti türlerinizi otomatik olarak değişimlere ve kuyruklara eşler. Gönderme bir kuyruğu hedefler (komut); Yayımlama ise bir değişimi hedefler ve abone olmuş her tüketicinin kuyruğuna bir kopya gönderir (olay).

Uygulamada Bağımsızlaştırma

Sipariş hizmeti OrderPlaced olayını yayımlar ve işine devam eder. E-posta hizmeti ile analiz hizmeti birbirinden bağımsız olarak bu olayı tüketir. Yeni bir abone eklemek için üreticide değişiklik yapılması gerekmez.

Teslimat Garantileri

Aracılar genellikle en az bir kez teslimat sunar: bir ileti, başarısızlık sonrasında yeniden teslim edilebilir. Bu nedenle tüketiciler eş etkili olmalıdır; böylece aynı iletinin iki kez işlenmesi güvenli olur.

Mesajlaşma Ne Zaman Kullanılmalı

İş asenkron olarak gerçekleşebildiğinde, hizmetleri birbirinden bağımsızlaştırmanız gerektiğinde veya ani yük artışlarını karşılamak istediğinizde mesajlaşmayı tercih edin. Anında istek-yanıt sonucu gerektiğinde doğrudan bir API çağrısı yine daha basit olabilir.

Kısa Kontrol

Mesajlaşma kavramlarını sınayın.

Özet

Asenkron mesajlaşma, hizmetleri bir ileti aracısı üzerinden birbirinden bağımsızlaştırır. MassTransit, RabbitMQ gibi aracıları soyutlar. Komutlar (emir kipinde, tek işleyici) bir kuyruğa gönderilir; olaylar (geçmiş zamanda, birçok işleyici) abonelere dağıtım yapan bir değişime yayımlanır. En az bir kez teslimat bekleyin; bu nedenle tüketicileri eş etkili hâle getirin.

Sıkça Sorulan Sorular

“Mesajlaşma Kavramları” dersi ücretsiz mi?

Evet — “Mesajlaşma Kavramları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 4 dersten oluşur.

“Mesajlaşma Kavramları” dersinde ne öğreneceğim?

Komutları, olayları ve kuyrukları anlayın. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C# Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Mesajlaşma Kavramları” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Mesajlaşma Kavramları
  2. Mesaj Üretme ve Tüketme
  3. Saga'lar ve İş Akışları
  4. Hata İşleme ve Yeniden Denemeler
← C# Academy Sayfasına Dön