2009-09-28 15 views
5

Ho valutato diverse tecnologie di coda messaggi opensource, come RabbitMQ, ActiveMQ, OpenAMQ, ecc. La mia domanda è: quali vantaggi si ottengono utilizzando una tecnologia commerciale come Tibco EMS, WebSphereMQ, Sonic, ecc. Invece di qualcosa come Active o Rabbit? PHP sarà la lingua principale coinvolta, anche se i sistemi Java interagiranno.Vantaggi della messaggistica commerciale Middleware vs Open Source

risposta

13

Direi che i vantaggi sono pochi e distanti. Devi davvero essere sicuro che un sistema commerciale è per te prima di investire, perché è probabile che non si possa tornare indietro.

Alcune di queste cose sono così esoterica, così incline a vendor lock-in, così dannatamente pesante che vi sentirete come se aveste un gorilla sulla schiena, non solo una scimmia;)

4

Ci sono grandi comunità intorno a progetti come RabbitMQ (controlla la mailing list per esempio). Inoltre, se il costo è un problema, ovviamente l'open source è una vittoria lì.

+1

+1 RabbitMQ è un software veramente eccellente, altamente consigliato. –

+1

"Consideriamo ActiveMQ ad esempio Sia Progress Software che SpringSource offrono accordi di supporto per ActiveMQ" - se il supporto per il software opensource diventa in definitiva lo stesso costo, perché non un prodotto commerciale basato su fornitore? – hB0

5

Quelle tecnologie commerciali sono buoni, ma investire in essi può essere ripido. Quando si prende una decisione, è necessario considerare sia i costi annuali di licenza che i costi di supporto continuativi. Per quanto riguarda il lock-in del fornitore, nel mondo commerciale c'è un solo fornitore che offre supporto per un determinato prodotto. Nel mondo open source, in genere c'è più di un fornitore che offre supporto. Prendi in considerazione ActiveMQ ad esempio. Sia Progress Software che SpringSource offrono accordi di supporto per ActiveMQ e altri.

Inoltre, nel mondo commerciale, non riuscirai mai a cercare il codice sorgente da solo. Per un prodotto come ActiveMQ, chiunque può prendere il codice sorgente. Questo è piuttosto potente perché significa che è possibile aggiungere funzionalità, ecc. E molto probabilmente farle aggiungere al prodotto.

ActiveMQ ha una grande community ed è molto diffuso. ActiveMQ fornisce API client per molte lingue tra cui C/C++, Java, .NET, Perl, PHP, Python, Ruby e altro.

Bruce

3

Penso che sia sempre meglio di esaminare a fondo le vostre esigenze prima di scegliere un sistema di messaggistica:

  • Non tutti i fornitori commerciali sosterranno PHP per esempio. ActiveMQ e RabbitMQ lo faranno.
  • Non tutti i sistemi di messaggistica supportano dimensioni di coda molto grandi, sebbene ActiveMQ sia
  • Non tutti i sistemi di messaggistica sopravvivono all'interruzione di un hard broker senza perdere i messaggi ActiveMQ - senza dover utilizzare le transazioni.

E se avete intenzione di utilizzare l'open source - sempre cerca nella comunità - ActiveMQ è la comunità più attiva di qualsiasi messaggio di origine vendor aperta - ed è anche Apache - il che significa che la diversità e la non dipendenza da un singolo sviluppatore o venditore per la consegna.

4

La più grande differenza che ho riscontrato è il supporto operativo e la gestione. I fornitori commerciali forniscono di solito strumenti migliori per ops/staff di supporto per inviare nuovamente, modificare messaggi, ecc.

Questo è spesso un punto debole delle offerte open source, che, se rettificate, dovrebbero causare una seria mancanza di sonno per i venditori commerciali.

1

Se si utilizza prodotti commerciali che viene fornito con tutto (solo dobbiamo di utilizzare), ma tutti i prodotti open source avrà caratteristiche di base, ma ancora siamo in grado di implementare le caratteristiche del prodotto commerciale (coinvolge molti sviluppo)