Dubbo是由阿里巴巴开源的分布式SOA架构的框架,与微服务SCA,SCN类似,但是又有所不同。
主要的区别在于,Dubbo将程序分为2层,一层为Web层,其实就是提供服务的服务消费端,也就是我们在spring里面的Controller,用于暴露接口。
另一层为服务提供层,其实就是业务层,调用service接口从而调用实现方法完成一次业务调用。与springcloud的项目架构不同的是,它的代码结构严格按照这个结构分割。
总体上来看就是一个单体架构被分割为Consumer和ServiceProvider.
其中,传统spring架构中除了Controller以外的结构:domain(entity),service,serviceImpl都会被抽取到服务提供层。
想要调用服务层,重点在于替换原先的注解@Service为@DubboService,以及依赖注入时的@AutoWired替换为@DubboReference
最后在Dubboadmin可以看见已经注册成功。
最后总结,其实就是是三个大步骤:
1.创建指定模块并引入依赖
2.将指定接口导入到提供者模块中
3.在Controller中引入dubbo服务