实现多种MQ相互切换--consumer

1.场景

这回续写服务化项目mq改造,目的是将通过修改配置文件做到切换apache Rocket MQ 与阿里云Rocket MQ

2.UML 类图

 实现多种MQ相互切换--consumer

1.MQConsumer  项目中公共用的接口,这里只添加了start 与shutdown,根据个人使用情况而定,可以再加上isStart、isClose

2.AbstractMQConsumer 实现start与shutdown,并组合MQMessageHandler 接口,

3.RocketMQConumser、AliYunRocketMQConsumer则实现具体的消息能容,并代理MQMessageHandler.doHandler来执行对消息的处理。

4.MQConsumerFactory 则实现实例化固定的mq对象,且使用java反射newinstance,

3.关键配置项目说明

通过配置mqTypeName 来切换mq种类