大家好,最新版的 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启动
,观察标准输出中出现如下字样:
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
中,有如下代码:
@Reference(version = "1.0.0", url = "dubbo://127.0.0.1:12345")
private DemoService demoService;
这表明消费端通过指定服务端地址 dubbo://127.0.0.1:12345
,通过直连方式调用服务。
com.dubbo.example.consumer.DubboConsumerBootstrap#main启动
,观察服务端日志,出现如下内容:
Hello mercyblitz, request from consumer: /30.5.124.39:59553
观察客户端日志,出现如下内容:
Hello mercyblitz, response from provider: 30.5.124.39:12345
表明客户端调用成功。
注意,若要使用注册中心进行服务注册发现,请修改
dubbo-demo/dubbo-demo-provider/src/main/resources/application.properties
和dubbo-demo/dubbo-demo-consumer/src/main/resources/application.properties
文件中的dubbo.registry.address
为对应的注册中心的地址,例如zookeeper://localhost:2181
。注意还需要引入响应的 zk 依赖。
总结
看到这里,相信你已经掌握了如何安装 Cloud Toolkit 插件,如何快速创建一个基于 Spring-boot + Dubbo 的样例工程,快来体验一下开发部署提速 8 倍的感受。
-End-
长按2秒,识别二维码,关注我
相关文章推荐: