2013-02-13 12 views
5

Önceki işimde AMQP'nin yararlarını kullandım, ancak ben rabbitMQ alt projesinin geliştirilmesine dahil değildim. Şu andaki işimde AMQP uygulamalarından birini (muhtemelen rabbitMQ) entegre etmekten sorumlu olmak istiyorum. Buradaki mesele, AMQP'yi kullanarak patronumu ikna etmem gerektiğidir.AMQP kullanımı ne zaman uygun?

"RabbitMQ eylemde" okuyorum ve Bay Videla AMQP'nin herhangi bir sistemi geliştirebileceğini yazdı, ancak projemi nasıl geliştirebileceğimi göremiyorum. Aralarında API çağrısı yapan sadece 2 sunucu kullanıyoruz, bu nedenle şu anda ölçeklenebilirlik sorunumuz yok. Gerçek para akışlarıyla uğraşıyoruz ve bu da herhangi bir operasyon için başarı teyidine ihtiyacımız olduğu anlamına geliyor, yani görevi sıraya koyamıyorum ve bu konuda “unutamıyorum”. AMQP bu davada ne gibi faydalar sağlayabilir?

Çok fazla ölçeklendirmeye gerek duymamanız durumunda, nispeten küçük sistemler için iki gerçek dünya örneği sunabilir misiniz? Lütfen standart "günlüğe kaydetme" ve "yayın mesajı" durumlarını atlayın :)

+2

İlginç bir soru, ancak bu "Geliştiriciler" yığınında daha uygun olabilir. SO genellikle * RabbitMQ kullanarak * programlama sorunları gibi evin uygulama tarafında odaklanmıştır. –

+0

Potansiyel kopya: http://stackoverflow.com/questions/2388539/in-which-domains-are-message-oriented-middleware-like-amqp-useful/ –

cevap

6

İhtiyacınız olan her şey RPC. Birçok mesajlar işlemsel (yani hepsi bir arada işlem)

  • (yani üzerinde ikili platformu, dil ve protokol formatı agnostik gönderebilir Onun yapabilirsiniz

    • : çünkü Tavşan RPC but it actually does gerçekten iyi bir iş için bilinmemektedir
    • Aracılık düşüncesi nedeniyle, yordamları yönetmek için kolayca daha fazla sunucu ekleyebilirsiniz.
    • Kolayca
    • RabbitMQ mesajı sözleşme ... değil işlemdir RabbitMQ mimari düzeyinde
    • de bir kontrol inversiyon tür RabbitMQ yönetici UI ile mesaj akış ve oranını görebilirsiniz. Bunu yapmanın doğru yolu budur.

    Şimdi SOAP söylemek bu karşılaştırabilirsiniz:

    • SABUN size komisyoncu vermek veya tüm sunucularının birbirleri hakkında bilmeniz gereken böylece yönlendirme yoktur. Size, evreleme, üretim, üretim için eklenti IP adresine gitmek zorunda kalmanın ne kadar sinir bozucu olduğunu söyleyemem.
    • SOAP, işlem sağlamaz. Bunu kendin yapmalısın.
    • SOAP XML
    • kullanmak zorundasınız SOAP istemcilerden daha güvenilir RabbitMQ istemcileri vardır. SOAP uyumluluğu bir PITA'dır.
    • SOAP mesajınız ve uç noktanız var. Bazı durumlarda bu bir profesyonel.

    eventbus/messagebus fikrini kullanmak için RabbitMQ kullanmak zorunda değilsiniz. Ben şahsen herhangi bir uygulama ile çıkmayacağım çünkü saf senkron RPC'den asenkron bir eventbus/messagebus'a çok fazla çalışma gerektiriyor. En baştan doğru yapmak daha iyi.