服务分组与多版本控制的使用方式几乎是相同的,只要将version替换为group即可。但使用目的不同。使用版本控制的目的是为了升级,将原有老版本替换掉,将来不再提供老版本的服务,所以不同版本间不能出现相互调用。而分组的目的则不同,其也是针对相同接口,给出了多种实现类。但不同的是,这些不同实现并没有谁替换掉谁的意思,是针对不同需求,或针对不同功能模块所给出的不同实现。这些实现所提供的服务是并存的,所以它们间可以出现相互调用关系。例如,对于支付服务的实现,可以有微信支付实现与支付宝支付实现等
一、创建提供者05-provider-group
(1) 创建工程
复制提供者工程04-provider-version,并更名为05-provider-group
(2) 定义两个接口实现类
删除原来的两个接口实现类,重新定义两个新的实现类
(3) 修改配置文件
二、创建消费者05-consumer-group
(1) 创建工程
复制提供者工程04-consumer-version,并更名为05-consumer-group
(2) 修改配置文件
(3) 修改消费者类