3 ms·
I'm currently working with ActiveMQ. I try to think of it as multiple IRC networks. Channels as topics for users by users, servers as gateways to isolated mater
by ambiate 13y ago
I'm currently working with ActiveMQ. I try to think of it as multiple IRC networks. Channels as topics for users by users, servers as gateways to isolated materials/users, server global messages as topics for users by servers, server local messages as queues for users by servers and private messages as queues for users by users.
It is absolutely fascinating offloading a message to the queue and letting the back-end handle workflow and shuffling it to another queue for micro-tasking (such as in the article). In fact, the topic/queue paradigm has really shifted my whole view on services.
Forgot to mention the queue added a layer of security. Our front-end is now the same as spawning a shell in the server (as far as data access). If you can spawn a shell on the webserver, the server is isolated from everything except the MQ ip/port combo. This means that what was possible on the front end is the only thing possible on the back end (as far as penetrating data). I'm sure a clever person could get figure out a way, but for your average person, that will be a show stopper.
- encoderer 13y agoWe use ActiveMQ and it's fine. It speaks STOMP which is nice for interop. It's JVM so it gets a little weird when it's out of memory. We're also playing with Kafka which takes things in a different direction than the JMS-based systems like ActiveMQ. So far so good.