新手村@村长 2022-03-16 16:36 采纳率: 70.9%
浏览 103
已结题

@Reference和@Autowired的场景区别

网上有看到对@Reference和@Autowired的解释;
前者是dubbo中远程服务的调用,后者是springboot提供的本地spring容器的bean调用;

但是我的疑问是: 我在这个dubbo项目里,每次在service实现类里或者controller控制类里,都是用@Autowired调用另一个service类;
没有用过@Reference. 我的疑问是,服务不就是service写好,用注解和配置文件里注册到注册中心吗.
那服务都在一个项目里,只不过分不同的模块. 那service之间调用,不都算是本地的吗,何必去注册中心找服务调呢.大家都在本地可以用@Autowired找到的.

可能我没有部署上线过项目,只发给测试人员测试通过就ok了, 对后面的流程不了解. 谁能解答下吗?

  • 写回答

4条回答 默认 最新

  • Tomshidi 2022-03-16 18:44
    关注

    springcloud是将http接口放到不同的模块里,再部署到不同的服务器,以分散服务器压力。
    dubbo更类似于rpc,是方法层面的划分,将方法单独拆开部署到不同服务器上,也是为了分散服务器压力。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月26日
  • 已采纳回答 3月18日
  • 创建了问题 3月16日