In which domains are message oriented middleware like AMQP useful?

后端 未结 4 1373
无人及你
无人及你 2021-01-29 21:38

What problem do MOM (Message Oriented Middleware) solve? Scalability? Integration?

In which domain are they typically used and in which domains are they typically no

4条回答
  •  终归单人心
    2021-01-29 22:04

    This is a great question.

    The main uses of messaging are: scaling, offloading work, integration, monitoring, event handling, routing, networking, push, mobility, buffering, queueing, task sharing, alerts, management, logging, batch, data delivery, pubsub, multicast, audit, scheduling, ... and more. Basically: anything where you need data but don't want to make a database request. (Caching is another, longer story).

    Another way of looking at this is to notice that many applications used to be built by assuming that users (people) would perform actions that would be fulfilled by executing a transaction on a database (including reads, writes). But today, many actions are not user-initiated. Instead they are application-initiated. For example "tell me when the book that I want to buy is in stock". The best way to solve this class of problems is with messaging of some sort. Whether you call it middleware or web push or real time salad dressing does not matter. It's all messaging.

    When you enable applications to initiate or react to events, then it is much easier to scale because your architecture can be based on loosely coupled components. It is also much easier to integrate those components if your messaging is based on a stable, scalable, serviceable tool, preferably using open standard APIs and protocols.

    I hope this helps. We try to maintain a list of useful links about messaging here

    Please get in touch with questions and comments on any of this, we are dead easy to find.

提交回复
热议问题