NServiceBus'un orijinal yazarı olarak, muhtemelen kendi teknolojime karşı biraz önyargılıyım, ancak bunu elimden geldiğince dengeli tutmaya çalışacağım.
Taşıma desteği
Hem NServiceBus hem de MassTransit, RabbitMQ ve Azure Service Bus'u destekler, ancak NServiceBus ayrıca şunları da destekler:
RabbitMQ konusunda
Tartışma NServiceBus'un RabbitMQ için daha güçlü bir desteğe sahip olduğu ileri sürülebilir - örneğin, Mass Transit'in "eklenti hala deneysel olarak kabul edildiğini belirtirken , gecikmiş teslimat işlevselliğinde . MassTransit tarafından destekleniyor, ancak eklentiden daha fazlasını garanti edemeyiz kendini garanti eder. "
Ayrıca tüm ekosistemin yararına .net SDK'ya katkıda bulunan RabbitMQ ekibiyle çok yakın çalışıyoruz .
Azure Service Bus söz konusu olduğunda
Azure Service Bus ekibiyle yaptığımız işbirliği seviyesi, .net çekirdek SDK'larına yönelik 70'ten fazla PR ile daha da yüksek .
NServiceBus'u kullandığınızda, bu bilginin tüm derinliğinden faydalanırsınız.
Takımlama
Bu en büyük fark.
Önemli bir sistem kurduğunuzda, tüm farklı hareketli parçaların birbiriyle nasıl konuştuğunu görebilmek gerçekten önemli hale gelir. MassTransit, Teşhis Kaynağı aracılığıyla Application Insights veya Open Trace gibi 3. taraf araçlara küçük bir entegrasyonun ötesinde bu alanda pek bir şeye sahip değildir .
NServiceBus etrafındaki Servis Platformu biraz daha ileri gider ve size ServiceInsight ile tüm uç noktalardaki sıra diyagramlarını görme olanağı verir :
Ayrıca tüm uç noktalarınızın ve mesajlarınızın mantıksal görünümünü de alabilirsiniz:
Temelde, sisteminizin mimarisinin canlı belgelerini alırsınız.
Yönetim ve İzleme
Bu, MassTransit'in çok fazla sahip olmadığı başka bir alandır. Entegre ettiğiniz bir 3. parti sistem kullanılamaz hale geldiğinde ve sisteminizdeki bir grup mesaj hata kuyruğuna girdiğinde, MassTransit'in bu mesajları daha sonra RabbitMQ Shovel eklentisini kullanarak manuel olarak geri taşımanız için sahip olduğu tek çözüm .
NServiceBus etrafındaki Hizmet Platformu, bu hata kuyruğunun izlenmesini, bu hataların nedenlerinin neler olduğunu görmek için grafik araçların yanı sıra bu başarısız mesaj gruplarını yeniden oynatma ve bunların aslında basit bir web uygulamasında başarıyla işlendiklerini görme becerisini içerir. ServicePulse denir .
Ayrıca, mesajlar başarısız olmaya başlamadan önce sorunlara ilişkin erken uyarılar sağlayabilen periyodik olarak çalıştırılan sağlık kontrollerinin görselleştirilmesi de vardır.
Ve son olarak, platformda mevcut performans izleme var:
Üretim desteği söz konusu olduğunda tam paketi gerçekten alırsınız.
Uzun vadeli destek ve Geriye dönük uyumluluk
Toplu Taşıma çalışanları, Gitter veya Google Gruplarında bu konu hakkında soruları olan herkese yardım etmekte her zaman son derece başarılı olsalar da, eski sürümlerde hata düzeltmeleri sağladıklarını sanmıyorum. Üretim sistemleriniz birkaç yıldır ortalıktayken ve her şeyi her zaman yükseltemezseniz, bu önemli olmaya başlar.
NServiceBus desteği şunları içerir :
- Her ana sürüm için 2+ yıl
- Ek 2 yıl uzatılmış destek
- Kritik konularda garantili yanıt süreleri
- 24x7 kullanılabilirlik
Danışmanlık ve Eğitim
Çevrimdışı bir bakış açısıyla, NServiceBus'ta dünya çapında halka açık kursların yanı sıra bir projeyi başlatmak veya sorun olması durumunda yardımcı olmak için sahaya getirilebilecek birçok danışman bulunmaktadır. MassTransit'ten NServiceBus'a geçmeye karar veren birkaç şirketten duydum çünkü ihtiyaç duyduklarında sahada birini bulamadılar.
Lisanslama
Bazı insanların NServiceBus hakkında hala bilmediği şey, kişisel kullanım ve girişimler için ÜCRETSİZ olmasıdır .
Ticari kullanım söz konusu olduğunda , NServiceBus etrafındaki lisanslama modelleri, geniş müşteri yelpazesinin belirttiği gibi çok esnektir ve yönetime haklı gösterilebilir. Tabii ki MassTransit ile lisanslama ücretsizdir.
Umarım bu bir şekilde yardımcı olur.