在使用jms消息队列时候,都不清楚我们为什么要使用jms,大部分只是在停留在使用层面上,下面通过几种场景介绍jms使用场景
1:系统解耦,目前在开发大部分的系统的时候,都需要系统之间的相互交互,交互方式,可以使用微服务,可以使用restful接口,
也可以使用其它等方式,不管通过哪种方式,都是为了系统之间的解耦。通过使用jms进行解耦,系统之间不需要彼此直接关注,
同时可以根据自身的业务需求,随时进行数据消费。这样的方式,比前面提到的解耦方式更加灵活
2:异步:使用jms提供服务,可以使同步的几个接口保持异步执行
3:消峰:可以对大量的请求进行控制
缺点:
1:增加了系统之间的复杂性,因为引入了MQ
2:会出现数据一致性、数据丢失、数据重复消费等问题