发布网友 发布时间:2022-05-02 07:07
共1个回答
热心网友 时间:2023-10-10 16:42
直连加不发布服务DUBBO的配置属性里面对消费端提供了不从注册中心发现服务的机制,直接配置远程接口的地址,这样可以保证消费端连接到制定的环境接口。这样消费端是解决了问题,但是服务提供端呢?如上图的B1它即是消费端也是服务提供端,它提供A1所依赖的接口,那么如果B1将它的服务发布到注册中心里面(这里需要提醒,STABLE环境机制里面所有子环境公用一个注册中心),那么势必会导致stable环境里面的A会发现B1提供的服务?势必会导致stable环境的不稳定(stable环境的机制是stable环境只能进不能出,就是不能调用外部其他子环境的服务)?所以B1不能发布服务到注册中心,bbo也提供了相关的配置属性来支持这一点。下面我例举出通过哪些配置可以实现这种方案:服务消费端:DUBBO在消费端提供了一个url的属性来指定某个服务端的地址默认的方式是从注册中心发现接口为com.alibaba.bbo.demo.HelloWorldService的服务,但是如果需要直连,可以在bbo.properties下面配置bbo.reference.helloWorldService.url=bbo://ip:port/com.alibaba.bbo.demo.HelloWorldService可以通过配置bbo.reference.url=bbo://ip:port/来让某个消费者系统的服务都指向制定的服务器地址(关于配置信息可以参考《DUBBO配置规则详解》)