当前位置:首页 > 服务端 > 轻松搭建Dubbo架构体系,你也能成为一流架构师

轻松搭建Dubbo架构体系,你也能成为一流架构师

2022年09月17日 14:31:33服务端5

基于Dubbo架构体系,拿来即用,毫无任何杂糅的组件,可以基于此作为Dubbo分布式微服务的脚手架。

dubbo-admin地址为:

https://github.com/apache/dubbo-admin

官方文档:

https://github.com/apache/dubbo-admin/blob/develop/README_ZH.md

注意需要安装Zookeeper(因为Dubbo使用Zookeeper作为注册中心)

一定要把dubbo-admin中的duboo-admin-server运行起来,对应的dubbo-ui通过npm run dev命令也要将其运行下来(记得npm install)

对于学习Java还有相关的一切疑惑与难题,皆可随时私信我咨询,朋友圈 输入:huany6880
本人接触Java语言将近20年时间,敢说自己对于Java的了解是精通的水平,如能尽自己的绵薄之力为大家提供一些微薄的帮助,不胜荣幸。另外还有专属IT编程就业规划师(Java、人工智能方向)和Java架构师路线图、面试题资料。

一、生产者

1.导入Maven依赖

<dependencies>
       <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter</artifactId>
       </dependency>

       <dependency>
           <groupId>org.apache.dubbo</groupId>
           <artifactId>dubbo-spring-boot-starter</artifactId>
           <version>3.0.2.1</version>
       </dependency>

       <dependency>
           <groupId>org.apache.curator</groupId>
           <artifactId>curator-x-discovery</artifactId>
           <version>5.1.0</version>
       </dependency>

       <!-- zk的依赖 -->
       <dependency>
           <groupId>org.apache.dubbo</groupId>
           <artifactId>dubbo-dependencies-zookeeper</artifactId>
           <version>2.7.6</version>
           <type>pom</type>
           <exclusions>
               <exclusion>
                   <groupId>org.slf4j</groupId>
                   <artifactId>slf4j-log4j12</artifactId>
               </exclusion>
           </exclusions>
       </dependency>
   </dependencies>


2.主类

@SpringBootApplication
public class YcExampleDubboProviderApplication {
    public static void main(String[] args) {
        SpringApplication.run(YcExampleDubboProviderApplication.class, args);
    }
}

3.Service极其ServiceImpl

TestService.java

public interface TestService {
    String showName();
}


TestServiceImpl.java

@DubboService(version = "1.0")
public class TestServiceImpl implements TestService {
    @Override
    public String showName() {
        return "show server name";
    }
}

4.配置文件

# Spring boot application
spring.application.name=dubbo-provider
# Base packages to scan Dubbo Component: @org.apache.dubbo.config.annotation.Service
dubbo.scan.base-packages=com.yc.example.dubbo.provider.service.impl   
# Dubbo Application
## The default value of dubbo.application.name is ${spring.application.name}
dubbo.application.name=dubbo-provider
# Dubbo Protocol
dubbo.protocol.name=dubbo
dubbo.protocol.port=20881
## Dubbo Registry
dubbo.registry.address=zookeeper://127.0.0.1:2181
server.port=7010

5.运行效果

轻松搭建Dubbo架构体系,你也能成为一流架构师 _ JavaClub全栈架构师技术笔记

二、消费者

1.导入Maven依赖

<dependencies>
        <dependency>
            <groupId>com.yc.framework</groupId>
            <artifactId>yc-example-dubbo-provider</artifactId>
            <version>1.0</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- dubbo的依赖 -->
        <!-- https://mvnrepository.com/artifact/org.apache.dubbo/dubbo-spring-boot-starter -->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-spring-boot-starter</artifactId>
            <version>3.0.2.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.curator</groupId>
            <artifactId>curator-x-discovery</artifactId>
            <version>5.1.0</version>
        </dependency>

        <!-- zk的依赖 -->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-dependencies-zookeeper</artifactId>
            <version>2.7.6</version>
            <type>pom</type>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

2.主类

@SpringBootApplication
public class YcExampleDubboConsumerApplication {
    public static void main(String[] args) {
        SpringApplication.run(YcExampleDubboConsumerApplication.class, args);
    }
}

3.配置文件

spring.application.name=dubbo-consumer
dubbo.registry.address=zookeeper://127.0.0.1:2181
server.port=7000
dubbo.protocol.name=dubbo
dubbo.protocol.port=20881

4.测试类

TestController.java如下:

@RestController
public class TestController {
    @DubboReference(version = "1.0")
    private TestService testService;

    @GetMapping("test1")
    public String test1() {
        return testService.showName();
    }
}


5.测试效果

轻松搭建Dubbo架构体系,你也能成为一流架构师 _ JavaClub全栈架构师技术笔记

轻松搭建Dubbo架构体系,你也能成为一流架构师 _ JavaClub全栈架构师技术笔记

三、源代码

https://github.com/developers-youcong/yc-framework/tree/main/yc-example/yc-example-dubbo

作者:编程匠工
来源链接:https://blog.csdn.net/html1997/article/details/124631111

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/server/42602.html

标签: Dubbo
分享给朋友:

“轻松搭建Dubbo架构体系,你也能成为一流架构师” 的相关文章

Dubbo原理浅析

Dubbo原理浅析

一、Dubbo是什么 百度百科(没有什么比度娘知道的更多):Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接...

Spring Boot 中如何使用 Dubbo Activate 扩展点

Spring Boot 中如何使用 Dubbo Activate 扩展点

摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 公司的核心竞争力在于创新 – 《启示录》 』 继续上一篇:《 Springboot 整合 Dubbo/ZooKeeper 》,在...

dubbo+spring_maven 遇到的问题 Error creating bean with name '***': Instantiation of bean failed;

Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cpUserAgent': Instantia...

详解SpringMVC注解方式集成Dubbo

由于最近项目需要SpringMVC集成Dubbo,本文大概记录下详细集成过程: 一、首先项目中Maven引入Jar包 <!-- dubbo相关 --> <dependency> <gr...

Java互联网架构师视频课程 分布式系统架构 Dubbo ActiveMQ Netty

Java互联网架构师视频课程 分布式系统架构 Dubbo ActiveMQ Netty

视频课程内容包含: 高级Java架构师包含:spring boot、Spring  cloud、Dubbo、Redis、ActiveMQ、Nginx、Mycat、Spring、MongoDB、ZeroMQ、Git、Nosql、Jvm、Mecached...

史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官!

史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官!

想往高处走,怎么能不懂 Dubbo? Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一。Dubbo 更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉。 下面我为大家准备了一些 Dubbo 常见的的面...

搭建SpringBoot+dubbo+zookeeper+maven框架(一)

搭建SpringBoot+dubbo+zookeeper+maven框架(一)

这几天项目还没来,所以就自己试着参考网上的一些资料,搭建了一个SpringBoot+dubbo+zookeeper+maven框架,网上参考的很多资料照着他们一步一步搭建,最后很多都运行不通,很是郁闷,最后自己在总结了他们之后自己搭建了一个,项目的源码我会附在文章的最后,并且后期还会继...

70道Dubbo面试题及答案(最新整理)

70道Dubbo面试题及答案(最新整理)

Dubbo面试题及答案【最新版】Dubbo面试题大全(2021版),发现网上很多Dubbo面试题及答案整理都没有答案,所以花了很长时间搜集,本套Dubbo面试题大全 如果不背 Dubbo面试题的答案,肯定面试会挂! 这套Dubbo面试题大全,希望对大家有帮助哈...

Dubbo整合Nacos

Dubbo整合Nacos

Dubbo项目将Nacos作为其注册中心和配置中心 Nacos提供了四个主要功能 服务发现和服务运行状况检查(服务治理):Nacos使服务易于注册自己并通过DNS或HTTP接口发现其他服务。Nacos还提供服务的实时运行状况检查,以防...

SpringCloud系列之集成Dubbo应用篇

SpringCloud系列之集成Dubbo应用篇

目录 前言 项目版本 项目说明 集成Dubbo 2.6.x 新项目模块 老项目模块 集成Dubbo 2....

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。