演示如何快速开发一个 Dubbo 微服务应用

演示如何快速开发一个 Dubbo 微服务应用

以下文档将引导您从头创建一个基于 Spring Boot 的 Dubbo 应用,应用将开启 Triple 通信协议、服务发现等微服务基础能力。

快速创建应用

Dubbo 提供了 dubboctl cli在线 web 服务两种方式帮助开发者快速初始化项目,可以根据需要选择其中一种方式。

  • dubboctl 可以生成任意语言的项目模板,如 Java、Go、Node.js、Web 等;
  • 在线 web 服务的访问地址是:start.dubbo.apache.org,它是针对 Java 语言定制的,和 Spring Initializr 效果一致。

方式一:dubboctl

首先,确保本地已安装 dubboctl,如未安装可运行以下命令完成安装:

curl -L https://dubbo.apache.org/downloadKube.sh | sh -

cd dubbo-kube-$version
export PATH=$PWD/bin:$PATH

在任意目录,运行以下命令即可基于预置模板生成新项目:

dubboctl create -l java dubbo-demo

进入 dubbo-demo 目录,可看到如下项目结构:

方式二:start.dubbo.apache.org 在线服务

如果您是 Java 开发者,我们更推荐使用 start.dubbo.apache.org 在线服务创建面向生产环境的复杂项目,这里有更多的组件供您选择。

请打开 start.dubbo.apache.org(支持浏览器页面和 IntelliJ IDEA 插件),参照以下视频步骤可在一分钟之内快速创建一个 Dubbo 应用。

下载生成的示例应用并解压,可看到以下项目结构:

定制开发与本地调试

将应用导入您喜爱的 IDE 工具,接下来就可以对您的微服务应用进行定制化开发了,更多开发及 SDK 使用方式请参考 Dubbo Java 用户手册。在 IDE 开发环境中,通过以下入口类可以快速启动 Dubbo 应用。

SpringApplication Run

我们在本地成功使用 Triple 协议发布了服务,在应用启动成功后,可直接使用 cURL 测试服务是否已经正常运行:

curl \
    --header "Content-Type: application/json" \
    --data '["Dubbo"]' \
    http://localhost:50051/com.example.demo.dubbo.api.DemoService/sayHello/

更多内容

部署示例应用到 Kubernetes 集群

演示如何将当前应用打包为 Docker 镜像,并部署到 Kubernetes 集群。

示例源码解读 & 定制开发

关于示例应用的源码讲解,学习如何定制 Dubbo Spring Boot 应用。

使用 dubboctl 创建多语言应用

如何使用 dubboctl 快速创建 go、node.js、web、rust 等多语言应用。



最后修改 September 22, 2023: update doc (0a8c9c2257)