Are there any good alternatives to RabbitMQ for low-end setups?

26,565

Solution 1

http://www.zeromq.org/ might be what you are looking for. If you are on Windows you might use MSMQ

EDIT: I guess I missed the AMQP part of the question.

Solution 2

ActiveMQ seems to be good alternative, I was using RabbitMQ to set up "cluster" over WAN, which is not supported by RabbitMQ cluster, since it requires all machines within same location.

It seems ActiveMQ is better than RabbitMQ, in the sense that it is easy to set up and maintenance, for "cluster"

Share:
26,565

Related videos on Youtube

lyschoening
Author by

lyschoening

Updated on July 09, 2022

Comments

  • lyschoening
    lyschoening almost 2 years

    I've been using RabbitMQ in a few setups now, and I can't shake the feeling that there must be something that's more easily set up. Despite it's conveniences it's hard to justify MQ for a solution that only processes a couple of thousand messages a day, simply because maintaining RabbitMQ is so much work.

    Does anyone know an AMQP implementation with a simple installation and maintenance process?

    For those who don't know it, RabbitMQ is an AMQP implementation written in Erlang. It is supposed to be very stable, but that is only really the case if you know enough about Erlang to avoid its problems. Whether it's memory limits or changes in the hostname, there is always a need to get deeper into it.

    • scvalex
      scvalex almost 13 years
      If you're hitting memory limits, you're doing a lot more than "a couple of thousand messages a day". If you change the hostname, yeah that'll effectively disable the mnesia database. On the other hand, it normally uses 13 Mb of RAM, so it has pretty low requirements, and the installation is usually a Deb, RPM or MSI. Since you already seem to have hit the common problems, RabbitMQ is still probably your best bet.
    • lyschoening
      lyschoening over 12 years
      By memory limits I am referring to the default memory limit setting in Erlang. I've had problems when too many messages queued up when a consumer died on me because the default process limit is tiny, I've had problems due to outside network name changes, as well as a fair share of crashes I could not possibly track down without a deeper understanding of Erlang. Erlang's sophisticated multiprocessing environment need too much learning and maintenance for casual use.
    • CaptainHastings
      CaptainHastings about 11 years
      @lyschoening Hello, I am curious to know if you decided to use replace RabbitMq with Qpid or something else entirely? Cheers
    • lyschoening
      lyschoening almost 10 years
      In case people wonder, —I ended up deciding I did not need AMQP for my application and have used Redis and 0MQ since.
  • David Dossot
    David Dossot almost 13 years
    Is 0MQ AMQP compliant? I think the OP wants an AMQP broker.
  • scvalex
    scvalex almost 13 years
    It's more heavy-weight than RabbitMQ. QPid is usually the way to go if you have a lot of legacy enterprise code lying around and just want to tie it into AMQP.
  • scvalex
    scvalex almost 13 years
    0MQ isn't AMQP. It uses it's own wire format and doesn't have high-level concepts such as queues, exchanges, etc. IIRC, it's also peer-to-peer for the most part (i.e. any peer is a server, unlike AMQP where clients and brokers are two different things entirely). There's also a RabbitMQ plugin that allows it to talk to 0MQ clients; so, if OP wants a lightweight clients and is fine with an AMQP broker, that's an option (though, probably not a good one).
  • Maxim Egorushkin
    Maxim Egorushkin over 12 years
    RabbitMQ, on the other hand, has few language bindings compared ot Qpid.
  • minaev
    minaev about 12 years
    All AMQP clients that work with RabbitMQ should, presumably, work with Qpid, so language bindings should not be a problem.
  • Dinei
    Dinei over 8 years
    MSMQ doesn't support receiving messages through the internet at all, so almost the only real use case that I can see is for applications running on the same machine. See stackoverflow.com/q/19156136/3136474 for more details on it.