Skip to Content.
Sympa Menu

grouper-dev - Re: [grouper-dev] grouper ActiveMQ integration

Subject: Grouper Developers Forum

List archive

Re: [grouper-dev] grouper ActiveMQ integration

Chronological Thread 
  • From: Jim Fox <>
  • To: Keith Hazelton <>
  • Cc: ,
  • Subject: Re: [grouper-dev] grouper ActiveMQ integration
  • Date: Tue, 23 Oct 2012 11:32:37 -0700 (PDT)

ActiveMQ integration is something I've been hoping to look into, especially
after hearing JimmyV talk about how they're using it to provision
identity data out of the Central Person Registry at Penn State.  
Looks like a prime candidate for a CIFER-recommended tool to use for
provisioning and integration tasks when an event-driven message based
solution is appropriate.

At UW we've used ActiveMQ for group change notices for several years.
It has generally worked well enough, but for many reasons all of our
new group messaging activities are using Amazon's SNS/SQS messaging.

ActiveMQ is expensive. You have to get and maintain hardware,
install and document the software, monitor it, be on-call during the
night, administer it. It might be open source, but it isn't free.

If you are lucky enough to have an existing ActiveMQ service
operated by another department, and they are willing to let use use
it mostly for free (our situation), hope they will continue
to give you wonderful service after they have migrated their own
stuff to RabbitMQ, or OpenMQ, or some other MQ and you're the
only one left on the ActiveMQ system.

Connections can hang. We use the CMS client, for c++ with an
interface library for plain c. (You know there's trouble with an
interface when the first thing you absolutely need is to find an
interface package for your language.) This interface uses persistent
connections and certain conditions on the server will cause these
connections to hang. This is a difficult situation to monitor.
Generally an external process has to send test messages and report
when none has been processed for some timeout period.

Amazon's messaging service, by comparison, is nearly free, is
exceptionally easy to use (there are client libraries for many
languages, including both our present favorites: java and python,
but I had no trouble writing a c client from scratch), easy to
configure (a web client make most administration self-service),
and is reliable. It is also RESTful.

We have, as do most universities nowadays, initiatives to use cloud
services in lieu of a 'running everything ourselves' mentality.
Our people are not so fearful of losing control of even core
services. It is the future.

There are a couple of advantages ActiveMQ has over Amazon SNS.

ActiveMQ is an order of magnitude faster than SNS. Is that important?
For our network team, monitoring thousands of routers and whatnot,
and sending millions of messages per day, it is important. For our
group service, not so much. Messaging for course enrollment,
operating since summer, now totals about 300,000 adds or drops.
All the messages get to our consumers in a few seconds. And a few
seconds is a short time for this application.

ActiveMQ always delivers messages in order (I think). With SNS/SQS
they can get out of order. Something to deal with.


Archive powered by MHonArc 2.6.16.

Top of Page