ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

dubbo2.6.x源码-idea环境搭建

2022-05-18 22:01:52  阅读:159  来源: 互联网

标签:dubbo dubbo2.6 service api demo idea 源码 registry new


git地址

https://github.com/Bannirui/dubbo.git

 

项目环境

" 代码clone
git clone https://github.com/Bannirui/dubbo.git

" 分支 study-2.6.x
git checkout -b study-2.6.x origin/2.6.x

" push
git push -u origin study-2.6.x

 

demo

以dubbo api方式构建服务 整合spring的思路肯定是利用后置处理器封装api的构建方式 目前将关注集中在dubbo本身

.
├── dubbo-demo
│   ├── dubbo-demo-api      // 接口
│   ├── dubbo-demo-consumer // 消费者
│   ├── dubbo-demo-provider // 提供者
└── tree.txt

 

生产者

/**
 * <p>以dubbo api方式构建 整合spring的思路肯定是利用后置处理器封装api的构建方式 目前将关注集中在dubbo本身</p>
 * @since 2022/5/18
 * @author dingrui
 */
public class ApiProvider {

    public static void main(String[] args) throws IOException {
        // 服务实现
        DemoService demoService = new DemoServiceImpl();

        // 当前应用配置
        ApplicationConfig application = new ApplicationConfig();
        application.setName("demo-provider");

        // 连接注册中心配置
        RegistryConfig registry = new RegistryConfig();
        registry.setAddress("multicast://224.5.6.7:1234");

        // 服务提供者协议配置
        ProtocolConfig protocol = new ProtocolConfig();
        protocol.setName("dubbo");
        protocol.setPort(20880);
        protocol.setThreads(200);

        // 服务提供者暴露服务配置 封装了与注册中心的连接
        ServiceConfig<DemoService> service = new ServiceConfig<DemoService>();
        service.setApplication(application);
        // 注册中心
        service.setRegistry(registry);
        // 协议
        service.setProtocol(protocol);
        service.setInterface(DemoService.class);
        service.setRef(demoService);

        // 暴露及注册服务
        service.export();

        System.in.read();
    }
}

 

消费者

/**
 * <p>以dubbo api方式构建</p>
 * @since 2022/5/18
 * @author dingrui
 */
public class ApiConsumer {

    public static void main(String[] args) {
        // 当前应用配置
        ApplicationConfig application = new ApplicationConfig();
        application.setName("demo-consumer");

        // 连接注册中心配置
        RegistryConfig registry = new RegistryConfig();
        registry.setAddress("multicast://224.5.6.7:1234");

        // 引用远程服务
        ReferenceConfig<DemoService> reference = new ReferenceConfig<DemoService>();
        reference.setApplication(application);
        reference.setRegistry(registry); // 多个注册中心可以用setRegistries()
        reference.setInterface(DemoService.class);

        // 和本地bean一样使用service
        DemoService demoService = reference.get();
        String ret = demoService.sayHello("world");
        System.out.println("--------------");
        System.out.println(ret);
    }
}

 

标签:dubbo,dubbo2.6,service,api,demo,idea,源码,registry,new
来源: https://www.cnblogs.com/miss-u/p/16286475.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有