美文网首页
dubbo直连

dubbo直连

作者: hvne666 | 来源:发表于2019-02-04 12:09 被阅读3次

dubbo版本:2.7.1-SNAPSHOT

本地一般都是直连测试环境的依赖服务
默认配置是在本地 home 下的 dubbo-resolve.properties 配置直连地址

服务引用的过程中如何加载 dubbo-resolve.properties

ReferenceBean 实现 FactoryBean 的 getObject(),注入 spring 容器

public class ReferenceBean<T> extends ReferenceConfig<T> implements FactoryBean, ApplicationContextAware, InitializingBean, DisposableBean {
    ......
    @Override
    public Object getObject() {
        return get();
    }
   ......
dubbo直连.png
private void resolveFile() {
        String resolve = System.getProperty(interfaceName);
        String resolveFile = null;
        if (StringUtils.isEmpty(resolve)) {
            resolveFile = System.getProperty("dubbo.resolve.file");
            if (StringUtils.isEmpty(resolveFile)) {
                File userResolveFile = new File(new File(System.getProperty("user.home")), "dubbo-resolve.properties");
                if (userResolveFile.exists()) {
                    resolveFile = userResolveFile.getAbsolutePath();
                }
            }
            if (resolveFile != null && resolveFile.length() > 0) {
                Properties properties = new Properties();
                FileInputStream fis = null;
                try {
                    fis = new FileInputStream(new File(resolveFile));
                    properties.load(fis);
                } catch (IOException e) {
                    throw new IllegalStateException("Failed to load " + resolveFile + ", cause: " + e.getMessage(), e);
                } finally {
                    try {
                        if (null != fis) {
                            fis.close();
                        }
                    } catch (IOException e) {
                        logger.warn(e.getMessage(), e);
                    }
                }
                resolve = properties.getProperty(interfaceName);
            }
        }
        if (resolve != null && resolve.length() > 0) {
            url = resolve;
            if (logger.isWarnEnabled()) {
                if (resolveFile != null) {
                    logger.warn("Using default dubbo resolve file " + resolveFile + " replace " + interfaceName + "" + resolve + " to p2p invoke remote service.");
                } else {
                    logger.warn("Using -D" + interfaceName + "=" + resolve + " to p2p invoke remote service.");
                }
            }
        }
    }

相关文章

  • dubbo直连引发的dubbo重试失效

    dubbo直连引发的dubbo重试失效DubboInvoker与FailoverClusterInvoker直连会...

  • dubbo记录

    目录 《dubbo入门》《dubbo管理控制台》《dubbo超时重传》《dubbo直连》《dubbo实现服务降级》...

  • dubbo直连

    dubbo的直连方式即消费方不通过zookeeper注册中心去调用注册的服务,而是直接绕过zookeeper环节直...

  • dubbo直连

    dubbo版本:2.7.1-SNAPSHOT 本地一般都是直连测试环境的依赖服务默认配置是在本地 home 下的 ...

  • dubbo直连

      正常情况下,dubbo肯定要搭配注册中心使用,如:zk。但当注册中心不可用的情况下,dubbo如何调用服务?它...

  • 高可用

    1、zookeeper宕机与dubbo直连 现象:zookeeper注册中心宕机,还可以消费dubbo暴露的服务。...

  • Dubbo配置直连

    背景 部分小伙伴由于某些原因不能再公司开发。那么现在提供dubbo直连的相关配置 步骤 使用在applicatio...

  • RpcException: Invalid token! Fai

    问题:直连dubbo应用时,提示错误:RpcException: Invalid token! Failed to...

  • DUBBO 直连提供者方法

    DUBBO 直连提供者方法 1 通过 XML 配置 如果是线上需求需要点对点,可在

  • 如何上手使用duboo-springcloud

    如何上手使用duboo-springcloud dubbo-springcloud gihub地址 直连模式 依赖...

网友评论

      本文标题:dubbo直连

      本文链接:https://www.haomeiwen.com/subject/seepsqtx.html