JMS与ActiveMQ消息数据持久化

  • 认识JMS
    JMS是Java消息服务(Java message service),是java平台关于面向消息中间件(MOM)的API。用于两个应用程序或分布式系统应用中,消息发送,消息异步处理。即应用程序间通信通过JMS服务,进行消息转发。应用程序间消息异步处理可解除应用程序的耦合。
    JMS有消息异步处理、程序间解耦、消息可靠的优势。
  • JMS消息模型
    Queue点对点(Point to Point
    Queue队列是点对点消费,发送者发送一条消息,只有唯一的一个消费者能对消息进行消费。消息生产者都将消息发送到消息的队列(Queue)中。队列的消息可以是持久的,保证消息服务出现故障仍然能够传递消息。
    特点:
    1).每个消息只有一个消费者(Customer),消息一旦被消费,消息就不在队列(Queue)了。
    2).消息发送者和接收者没有时间依赖,消息发送者只管消息发送,不管消息的消费者是否有接收消息。
    3).消息被接收到消息后,会发送消息确认(ACK)通知给消息队列(Queue)。
    Queue模型图:
    JMS与ActiveMQ消息数据持久化
    发布/订阅(Publish/Subscribe)
    消息发布者发布消息,消息通过主题(Topic)传递给所有接收者,消息发布者和订阅者彼此不相干。主题(Topic)主要用于保存和传递消息。
    发布/订阅模型中,应用程序有Topic、发布者(Publish)、订阅者(Subscribe)组成。
    特点:
    1).每个消息可有多个消费订阅者。
    2).发布者和订阅者无时间依赖性。某个主题(Topic)的订阅者,必须先创建一个订阅者后才能消费发布者的消息,且为消费消息,订阅者必须保持运行状态。
    3).可持久化订阅。
    Topic模型图:
    JMS与ActiveMQ消息数据持久化

  • 消息数据持久化

猜你喜欢

转载自blog.51cto.com/10874766/2444110