Apache Dubbo 牵手 IDE 插件,开发部署提速不止 8 倍

简介: 这一次,在最新的版本中,插件热情牵手了全国受欢迎的开源社区 Apache Dubbo,支持快速创建 RPC 框架 Dubbo 项目工程,并且将 Dubbo 应用快速部署到 EDAS(一个应用托管和微服务管理的PaaS平台) 上,同时支持本地服务和部署在 EDAS 上的服务之间互相调用。

自从产品经理银时小伙和他的团队在去年11月发布 Cloud Toolkit(一款 IDE 插件)以来,已帮助数以万计的开发者们提高了开发、测试、诊断以及应用部署效率。期间,他们还发布了 Contributor Ranking List,和开发者们一同定义、打造好用的 IDE 插件。

点击进入直播间

这一次,在最新的版本中,插件热情牵手了全国受欢迎的开源社区 Apache Dubbo,支持快速创建 RPC 框架 Dubbo 项目工程,并且将 Dubbo 应用快速部署到 EDAS(一个应用托管和微服务管理的PaaS平台) 上,同时支持本地服务和部署在 EDAS 上的服务之间互相调用。希望插件在拥抱开源的路上,服务好更多的开发者。

下文将为大家演示如何利用 Cloud Toolkit 快速创建 Apache Dubbo 工程,以及运行并验证这个样例工程的可执行性。

如何安装 cloud Toolkit 插件

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

  1. 打开 IntelliJ IDEA -> Preference,在弹出的框里面选择插件;
  2. 在输入框中输入 Alibaba Cloud Toolkit
  3. 在搜索结果中点击安装;

由于网络原因,可能会出现搜索不到的情况,请多尝试几次,或使用离线安装包进行下载。(点击“阅读原文”,免费下载)

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

如何创建 Apache Dubbo 工程

新建工程

  1. 打开 File -> New -> Project;
  2. 在弹出的对话框中选择 Apache Dubbo;
  3. 选择对应的 JDK 版本;
  4. 点击 next;

设置工程基本配置

  1. 选择 maven 项目;
  2. 输入相应的 groupID,例如 com.dubbo.example;
  3. 输入 ArtifactId,例如 dubbo-demo;
  4. 输入 Version,例如 1.0-SNAPSHOT;
  5. 选择 Dubbo 的版本,例如 2.7.2;
  6. 勾选要创建的种类,勾选 Consumer 和 Provider,则会相应创建出服务提供者和服务消费者的代码;
  7. 选择 Spring-boot 的版本,例如 2.1.5.RELEASE;
  8. 点击 Next;

配置工程名和目录

  1. 设置工程名,例如 dubbo-demo
  2. 设置工程目录,例如 ~/work/edas/dubbo-demo
  3. 点击 Finish;

创建完毕

此时 IDEA 将会创建一个新的工程,里面包含了一个完成 Dubbo Provider + Consumer 的样例工程。

验证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.propertiesdubbo-demo/dubbo-demo-consumer/src/main/resources/application.properties 文件中的 dubbo.registry.address 为对应的注册中心的地址,例如 zookeeper://localhost:2181。注意还需要引入响应的 zk 依赖。

总结

看到这里,相信你已经掌握了如何安装 Cloud Toolkit 插件,如何快速创建一个基于 Spring-boot + Dubbo 的样例工程,快来体验一下开发部署提速 8 倍的感受点击免费下载插件, 下一篇文章中将介绍如何将这个工程部署到 EDAS 环境中,期待与大家见面哦。

相关实践学习
微服务实战-服务注册中心 - Nacos
Nacos是阿里巴巴于2018年7月发布的一个开源项目,它是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。Nacos 支持几乎所有主流类型的服务的发现、配置和管理: Kubernetes Service  gRPC & Dubbo RPC Service  Spring Cloud RESTful Service  
相关文章
|
IDE 开发工具 C++
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
本文详细介绍了在离线环境中开发Avalonia UI项目的完整解决方案,包括Visual Studio 2022和JetBrains Rider的离线安装、Avalonia UI模板的配置、私有NuGet服务的部署与使用,以及NuGet包的制作和上传。通过这些步骤,您可以在网络受限或完全离线的环境中顺利进行Avalonia UI项目的开发。
AvaloniaUI项目离线开发全攻略:IDE安装、模板应用与NuGet私有化部署一站式解决
|
Dubbo Java 应用服务中间件
微服务框架Dubbo环境部署实战
微服务框架Dubbo环境部署的实战指南,涵盖了Dubbo的概述、服务部署、以及Dubbo web管理页面的部署,旨在指导读者如何搭建和使用Dubbo框架。
1365 17
微服务框架Dubbo环境部署实战
|
Apache 开发者 Java
Apache Wicket揭秘:如何巧妙利用模型与表单机制,实现Web应用高效开发?
【8月更文挑战第31天】本文深入探讨了Apache Wicket的模型与表单处理机制。Wicket作为一个组件化的Java Web框架,提供了多种模型实现,如CompoundPropertyModel等,充当组件与数据间的桥梁。文章通过示例介绍了模型创建及使用方法,并详细讲解了表单组件、提交处理及验证机制,帮助开发者更好地理解如何利用Wicket构建高效、易维护的Web应用程序。
480 0
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
当今社会,物联网技术的发展带来了许多繁琐的挑战,尤其是在数据库管理系统领域,比如实时整合海量数据、处理流中的事件以及处理数据的安全性。例如,应用于智能城市的基于物联网的交通传感器可以实时生成大量的交通数据。据估计,未来5年,物联网设备的数量将达数万亿。物联网产生大量的数据,包括流数据、时间序列数据、RFID数据、传感数据等。要有效地管理这些数据,就需要使用数据库。数据库在充分处理物联网数据方面扮演着非常重要的角色。因此,适当的数据库与适当的平台同等重要。由于物联网在世界上不同的环境中运行,选择合适的数据库变得非常重要。 原创文字,IoTDB 社区可进行使用与传播 一、什么是IoTDB 我
719 9
Apache IoTDB进行IoT相关开发实践
|
Java 持续交付 项目管理
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。
Maven是一款基于Apache许可的项目管理和构建自动化工具,在Java开发中极为流行。它采用项目对象模型(POM)来描述项目,简化构建流程。Maven提供依赖管理、标准构建生命周期、插件扩展等功能,支持多模块项目及版本控制。在Java Web开发中,Maven能够自动生成项目结构、管理依赖、自动化构建流程并运行多种插件任务,如代码质量检查和单元测试。遵循Maven的最佳实践,结合持续集成工具,可以显著提升开发效率和项目质量。
376 1
|
开发框架 Dubbo 应用服务中间件
微服务开发框架-----Apache Dubbo
这篇文章介绍了Apache Dubbo微服务开发框架,它提供RPC通信和微服务治理能力,支持服务发现、负载均衡和流量治理等功能,并强调了Dubbo在微服务规模化实践和企业级治理方面的优势。
微服务开发框架-----Apache Dubbo
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
The article introduces IoTDB, an open-source time-series database designed for efficient management of IoT-generated data. It addresses challenges like real-time integration of massive datasets and security. IoTDB supports high-performance storage,
722 0
Apache IoTDB进行IoT相关开发实践
|
存储 分布式计算 物联网
Apache IoTDB进行IoT相关开发实践
IoTDB是专为物联网(IoT)设计的开源时间序列数据库,提供数据收集、存储、管理和分析。它支持高效的数据写入、查询,适用于处理大规模物联网数据,包括流数据、时间序列等。IoTDB采用轻量级架构,可与Hadoop和Spark集成,支持多种存储策略,确保数据安全和高可用性。此外,它还具有InfluxDB协议适配器,允许无缝迁移和兼容InfluxDB的API和查询语法,简化物联网项目的数据管理。随着物联网设备数量的快速增长,选择适合的数据库如IoTDB对于数据管理和分析至关重要。
916 12
|
安全 Java Apache
如何安装与使用Spring Boot 2.2.x、Spring Framework 5.2.x与Apache Shiro 1.7进行高效开发
【7月更文第1天】在现代Java Web开发领域,Spring Boot以其简化配置、快速开发的特点备受青睐。结合Spring Framework的成熟与Apache Shiro的强大权限控制能力,我们可以轻松构建安全且高效的Web应用。本篇文章将指导你如何安装并使用Spring Boot 2.2.x、Spring Framework 5.2.x以及Apache Shiro 1.7来构建一个具备基础权限管理功能的项目。
599 0
|
Java 应用服务中间件 API
如何安装与使用Java EE 8、Servlet 3.0及Apache Maven进行高效开发
【7月更文第1天】搭建高效Java EE 8开发环境,包括安装JDK、选择WildFly或Payara Server作为应用服务器,以及安装Apache Maven。使用Maven创建Servlet 3.0 Web项目,编写 HelloWorldServlet,打包部署到服务器,通过访问特定URL测试应用。这一流程助力开发者实现快速原型和大型项目开发。
840 0

推荐镜像

更多