JMS,Java消息服务应用程序接口,全程为Java Message Service,是一个Java平台中关于面向消息中间件的API框架,用在两个应用程序之间或分布式系统中发送消息,整体的功能有点类似JDBC
其他的就不介绍了,直接看一下JMS支持的两种模式,因为MQ都有所对应
【概念】
一个生产者向一个特定的队列发布消息,一个消费者从该队列中读取消息,此时,生产者知道消费者,并直接将消息发送到消费者的队列中
【特点】
1、一条消息有且只有一个消费者可以获得
2、生产者和消费者在发送消息和消费消息的时候都可是无状态的
3、每一个成功处理的消息要么是自动确认,要么就是消费者手动确认
【概念】
是一种消息范式,消息的发送者(发布者)不会将消息直接发送给特定的接收者(订阅者),典型的Redis也有对应的这种模式,有兴趣的童鞋可以自己查阅一下,比较有趣
【特点】
1、支持向一个特定的主题发布消息,消费者可以订阅指定的主题进行消费
2、零个或多个订阅者可能对接收特定消息主题的兴趣感兴趣,从而消费
3、发布者和订阅者彼此不知道双方的存在
4、多个消费者可以获得消息
【特殊说明】
1、发布者需要事先创建一个主题,以便客户能够订阅
2、订阅者必须保持持续的活动状态,以此来接收消息,否则就会丢失未上线时的消息
3、对于持久订阅,订阅者未连接时发布的消息将在订阅者重连时重发