前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分分钟教你创建一个Apache Dubbo样例工程

分分钟教你创建一个Apache Dubbo样例工程

作者头像
MavenTalker
发布2019-07-19 16:30:38
1.2K0
发布2019-07-19 16:30:38
举报
文章被收录于专栏:歪脖贰点零歪脖贰点零

大家好,最新版的 Cloud Toolkit已发布,该版本提供了快速创建 Dubbo 工程的功能,下面就来快速体验下吧。

Cloud Toolkit 是一个 IDE 插件,帮助开发者更高效地开发、测试、诊断并部署应用。

Dubbo 采用全 Spring 配置方式,透明化接入应用,对应用没有任何 API 侵入,只需用 Spring 加载 Dubbo 的配置即可,Dubbo 基于 Spring 的 Schema 扩展进行加载。

如果不想使用 Spring 配置,可以通过 API 的方式 进行调用。

功能预览


功能入口


打开 IntelliJ IDEA,进入菜单:File - New - Project...

第一步:选择 Java SDK 版本

第二步:填写应用基本信息,包括选择 Dubbo 版本、Spring Boot 版本等。

第三步:确定创建

如下图所示,就完成了一个完整的 Dubbo 工程的创建了,此工程的结构和Apache Dubbo 官方样例工程完全一致。

参考 Apache Dubbo 官方样例工程:

https://dubbo.apache.org/zh-cn/docs/user/quick-start.html

如何安装 Cloud Toolkit 插件


本文使用 IntelliJ IDEA 在 MAC 下进行安装:

1. 打开 IntelliJ IDEA -> Preference,在弹出的框里面选择插件;

2. 在输入框中输入 AlibabaCloudToolkit

3. 在搜索结果中点击安装;

由于网络原因,可能会出现搜索不到的情况,请多尝试几次,或使用离线安装包进行下载。

安装完毕,重启 IntelliJ IDEA,再次访问 Preference, 可以看到左侧菜单出现了 Alibaba Cloud Toolkit,在已安装的插件里面也能找到。

验证Apache Dubbo工程


可以看到,创建出来的 Dubbo 样例工程是一个 Spring boot + Dubbo 的工程。服务端提供了一个com.dubbo.example.DemoService,通过 dubbo 协议暴露在 12345 端口。值得注意的是,由于默认 dubbo.registry.address=N/A,这说明服务没有注册到任何注册中心,需要客户端通过直连的方式来发现服务。

1. 启动Provider

com.dubbo.example.provider.DubboProviderBootstrap#main启动,观察标准输出中出现如下字样:

代码语言:javascript
复制
2019-07-03 16:05:50.585  INFO 19246 --- [           main] c.d.e.provider.DubboProviderBootstrap    : Started DubboProviderBootstrap in 36.512 seconds (JVM running for 42.004)
2019-07-03 16:05:50.587  INFO 19246 --- [pool-1-thread-1] .b.c.e.AwaitingNonWebApplicationListener :  [Dubbo] Current Spring Boot Application is await...

这说明服务端已经成功启动。

2. 启动Consumer

在消费端的com.dubbo.example.consumer.DubboConsumerBootstrap中,有如下代码:

代码语言:javascript
复制
@Reference(version = "1.0.0", url = "dubbo://127.0.0.1:12345")

这表明消费端通过指定服务端地址 dubbo://127.0.0.1:12345,通过直连方式调用服务。

com.dubbo.example.consumer.DubboConsumerBootstrap#main启动,观察服务端日志,出现如下内容:

代码语言:javascript
复制
Hello mercyblitz, request from consumer: /30.5.124.39:59553

观察客户端日志,出现如下内容:

代码语言:javascript
复制
Hello mercyblitz, response from provider: 30.5.124.39:12345

表明客户端调用成功。

注意,若要使用注册中心进行服务注册发现,请修改 dubbo-demo/dubbo-demo-provider/src/main/resources/application.propertiesdubbo-demo/dubbo-demo-consumer/src/main/resources/application.properties文件中的 dubbo.registry.address 为对应的注册中心的地址,例如 zookeeper://localhost:2181。注意还需要引入响应的 zk 依赖。

总结


看到这里,相信你已经掌握了如何安装 Cloud Toolkit 插件,如何快速创建一个基于 Spring-boot + Dubbo 的样例工程,快来体验一下开发部署提速 8 倍的感受。

-End-

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MavenTalk 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 如何安装 Cloud Toolkit 插件
  • 验证Apache Dubbo工程
    • 1. 启动Provider
      • 2. 启动Consumer
        • 总结
        相关产品与服务
        微服务引擎 TSE
        微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档