Dubbo搭建和基本使用

Dubbo 的环境搭建和基本使用方法 在生产环境下,Dubbo 依赖的环境非常少,只依赖一个注册中心和一个管理后台。其中,Dubbo 只强制依赖注册中心,管理后台是一个非强制依赖的管理工具。接下来,我们就以 Zookeeper 为注册中心,搭建 Dubbo 环境,包括安装注册中心和管理后台。本文搭建的是有注册中心的生产环境,不是无注册中心的Demo环境。 阅读详情

Dubbo搭建(直连式)

1、创建服务的提供者(Provider)

① 在一个独立项目中创建接口,并实现

如:UserService

实现:UserServiceImpl

public class UserServiceImpl implements UserService {
    @Override
    public String getUsername() {
        return "hello world";
    }
}
② 导入依赖

Spring相关核心依赖

Dubbo核心依赖

<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo</artifactId>
    <version>2.7.8</version>
</dependency>
③ 创建配置文件

创建Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!-- 将本地实例ioc-->
    <bean id="userService" class="com.sofwin.sercice.impl.UserServiceImpl"/>

    <!--    用于配置当前用用信息 不管该应用是提供者还是消费者都需要配置

    -->
    <dubbo:application name="pro1"></dubbo:application>

    <!--    要将服务暴露到哪里 用于配置连接注册中心相关信息
        address:注册中心的地址  N/A:直连
      -->
    <dubbo:registry address="N/A"></dubbo:registry>

    <!--    将服务暴露出去 声明接口类型
    interface:实现的接口
    ref:该接口的实现类
    -->
    <dubbo:service interface="com.sofwin.sercice.UserService" ref="userService"/>


</beans>

注意以下几步:

需要dubbo的约束。

配置当前应用信息。

配置连接注册中心的相关信息。

将服务暴露出去。

④ 测试是否将服务暴露出去

创建服务启动类,控制台打印“运行”则表示当前服务已运行。

public class APP {
    public static void main(String[] args) throws Exception{
        //加载配置文件
        ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
        //容器启动
        context.start();
        System.out.println("运行");

        //让线程处于读取的状态
        System.in.read();
    }
}

2、创建服务的消费者(Consumer)

① 创建与服务提供者接口和实现类相同的类和方法。
② 导入依赖
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
</dependency>
<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo</artifactId>
</dependency>
③ 创建配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">


    <!--    用于配置当前应用信息 不管该应用是提供者还是消费者都需要配置

    -->
    <dubbo:application name="con1"></dubbo:application>

    <!--    要将服务暴露到哪里 用于配置连接注册中心相关信息
        address:注册中心的地址  N/A:直连
      -->
    <dubbo:registry address="N/A"></dubbo:registry>

    <!--    调用远程服务
        interface:服务接口名,调用的接口
        id:远程调用生成的实体id
        url:点对点直连连接服务者地址,会绕过注册中心 协议名称://ip地址:端口号
    -->
    <dubbo:reference id="userService" interface="com.sofwin.service.UserService" url="dubbo://localhost:20880"></dubbo:reference>
</beans>
④ 创建模拟服务消费
public class App {
    public static void main(String[] args) {
        ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");

        UserService service=(UserService) context.getBean("userService");
        String username = service.getUsername();
        System.out.println(username);

    }
}

控制台输出:hello world 即搭建成功

Dubbo搭建(zookeeper)

使用zookeeper服务

1、安装zookeeper(Linux)

① 下载地址:https://zookeeper.apache.org/releases.html

② 将压缩包放入Linux系统中,将该文件移动到usr/local目录中

③ 通过命令tar xvf 文件名将压缩文件解压

2、配置zookeeper

① 依次进入解压后的zookeeper/conf目录

② 将该目录下的zoo_sample.cfg文件复制为zoo.cfg。

参考命令:cp zoo_sample.cfg zoo.cfg

③ 在解压后的zookeeper根目录下创建文件夹data

参考命令:mkdir data

④ 将dataDir后的内容该为dataDir=/usr/local/解压后的zookeeper/data,保存

参考内容:dataDir=/usr/local/zookeeper/data

3、创建服务的提供者

在直连式的基础上只需要修改配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">

    <!-- 将本地实例ioc-->
    <bean id="userService" class="com.sofwin.service.impl.UserServiceImpl"/>

    <!--    用于配置当前应用信息 不管该应用是提供者还是消费者都需要配置

    -->
    <dubbo:application name="pro1"></dubbo:application>

    <!--    要将服务暴露到哪里 用于配置连接注册中心相关信息
       protocol:注册中心地址协议,这里使用zookeeper协议
      -->
    <dubbo:registry protocol="zookeeper" address="192.168.0.195:2181"></dubbo:registry>


	<!--    默认启动为1秒 timeout设置超时时间-->
    <dubbo:service interface="com.sofwin.service.UserService" ref="userService" timeout="10000"/>


</beans>

4、创建服务的消费者

在直连式的基础上只需要修改配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://code.alibabatech.com/schema/dubbo        http://code.alibabatech.com/schema/dubbo/dubbo.xsd">


    <!--    用于配置当前应用信息 不管该应用是提供者还是消费者都需要配置

    -->
    <dubbo:application name="con1"></dubbo:application>

    <!--    要将服务暴露到哪里 用于配置连接注册中心相关信息
      -->
    <dubbo:registry address="192.168.0.195:2181" protocol="zookeeper"></dubbo:registry>

    <!--    调用远程服务
        interface:服务接口名,调用的接口
        id:远程调用生成的实体id
        url:点对点直连连接服务者地址,会绕过注册中心 协议名称://ip地址:端口号
    -->
    <dubbo:reference id="userService" interface="com.sofwin.service.UserService" check="false"></dubbo:reference>

</beans>

5、提供者服务启动和消费者调用服务基本与直连式相同。

SpringBoot与Dubbo的整合-zookeeper和监控中心搭建 &#13;    对于Dubbo的应用已经是十分普遍,自从阿里巴巴开源以来,国内许多公司就采用了dubbo的架构来开发项目。不过再dubbo十分火的时候,突然就停止更新了,&#13; 只有当当网还在其基础进行了拓展(dubbox)码云地址: https://github.com/dangdangdotcom/dubbox,直至最近阿里巴巴又进行更新了,而且更新好几个版本。&#... 阅读详情

相关推荐

KUKA机器人 - 从开机到自动运行

注1:本文仅代表本人对机器人使用的一些建议,在使用机器人前,还请详细阅读库卡机器人官方资料,道路千万条,安全第一条!!! 注2:技术有限,欢迎各位大大在阅读过程中发现各类问题,并且批评指正!!! 目录 一、准备工作 1. 机器人上电完成 2. 电脑安装Workvisual 二、学习手动移动机器人 三、项目配置 1. 设置机器人IP地址 2.电脑和机器人通过网线连接 3.查找并打开项目 4. 通讯配置 5. 项目上传 6. 检验IO配置 四、编程 1.新建程序 2. 程序...

yilunyao的博客 1万+

Dubbo(应用篇)

参考自dubbo官网 http://dubbo.apache.org/en-us/ 注册中心 注册中心通过registry标签配置,可配置多个。 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。 注册中心不做请求转发,相当于目录服务,存储地址和地址变更通知 注册中心与消费端、服务端均为长连接,与服务端保持长连接可以检测服务提供端是否异常,与消费端保持...

asd804171023的博客 458

4×V100部署Qwen3.8-Flash-Next:vLLM/GGUF实战

大模型本地部署的核心,是把参数量、量化精度、显存容量和推理框架放在同一张账本里算清楚。MoE 模型总参数量大但激活参数少,解码阶段更受显存带宽与 KV Cache 限制;通过 INT4/AWQ 或 GGUF 等 4-bit 量化可显著压缩权重占用,再结合 vLLM 张量并行、llama.cpp 分层切分提升多卡利用率。其技术价值在于让 V100 这类老架构 GPU 也能承载百亿级参数模型的私有化推理,并服务于 RAG 知识库、工作流 API、批量生成等场景。这次围绕 4×V100 32G 部署 Qwen3.

weixin_29061425的博客 347

dubbo系列二:dubbo常用功能总结(3)

16.本地伪装 本地伪装 通常用于服务降级,比如某验权服务,当服务提供方全部挂掉后,客户端不抛出异常,而是通过Mock数据返回授权失败。 在spring配置文件中按以下方式配置: <dubbo:service interface="com.foo.BarService" mock="com.foo.BarServiceMock" /> 1)Mock是Stub的一个子集,便于服务提供方在客户端执行容错逻辑,因经常需要在出现RpcException(比如网络失败,超时等)时进行容错,而在出现业.

进击30K的专栏 657

CHIP-Seq数据分析流程

文章目录CHIP-Seq数据分析流程相关软件安装数据下载将SRA转化为fastq文件数据质控,过滤数据质控然后进行质控,过滤低质量reads,去接头比对下载小鼠参考基因组的索引和注释文件比对sam文件转bam为bam文件建立索引载入IGV查看用MACS call peak安装MACS结果注释与可视化 CHIP-Seq数据分析流程 相关软件安装 所需要的软件有sratoolkit, fastqc,bowtie2,samtools,macs2,htseq-count,bedtools和前面RNA-seq数据分析

bio_meimei的博客 8789

从FER2013到AffectNet:表情识别数据集十年演进史与你的项目选型攻略

本文回顾了从FER2013到AffectNet等主流人脸表情识别数据集的十年演进历程,详细分析了各数据集的特点、适用场景及技术突破。针对不同项目需求,提供了从移动端应用到高精度研究的选型策略,特别强调AffectNet在现代FER项目中的核心价值,并给出混合数据集构建的实战方案。

weixin_26808439的博客 522

ssm整合zookeeper和dubbo

zookeeper与dubbo介绍: Dubbo是一个RPC框架, RPC, 全称Remote Procedure Call 远程过程调用,是分布式架构的核心,Dubbo提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 Zookeeper是一个分布式应用程序协调服务 详细请戳连接,大佬很厉害 https://blog.youkuaiyun.com/qq754772661/article/details/11...

YinChenLeilei的博客 787

ssm集成zookeeper+dubbo

目标:使用dubbo,完成服务消费者,调用,服务提供者方法 该博客最后有我集成好的ssm+zookeeper_dubbo项目哦~ 主要步骤: 1:环境准备 2:创建父工程(dubbo_parent) 依赖管理 3:创建公共子模块(dubbo_common) 实体类 4:创建接口子模块(dubbo_interface) 5:创建服务提供者模块(dubbo_provider) 对接口的实现 调用dao完成数据库的操作 6:创建服务消费者模块(dubbo_consumer) 引用接口 接收参数调用

gloamer的博客 671

从网口变压器到TVS管:手把手设计通过4KV浪涌的以太网电路

本文详细解析工业级以太网接口4KV浪涌防护设计,从网口变压器选型到TVS管布局,提供通过IEC61000-4-5标准测试的完整方案。重点介绍Bob Smith电路优化和PCB设计技巧,帮助工程师有效应对雷电感应和设备开关瞬态干扰,确保工业设备稳定运行。

study的专栏 284

梯度提升决策树GBDT原理与代码实例讲解

梯度提升决策树GBDT原理与代码实例讲解 1.背景介绍 1.1 机器学习发展历程 机器学习是人工智能领域的一个重要分支,旨在使计算机具备学习和改进自身性能的能力。随着大数据时代的到来,海量的数据为机器学习算法提供了广阔的应用空间。在

AI天才研究院 1085

dubbo的常用配置(基于注解)

  之前记录了基于springboot的dubbo入门案例,今天在此基础上记录dubbo官网介绍的常用属性配置,dubbo读取我们配置的属性时是有优先级的,优先级如下图:                        如图所示,优先级的属性依次为虚拟机参数>xml配置>dubbo.properties,虚拟机参数即程序启动之前我们通过-D配置的dubbo属性,xml配置即我们项目中...

weixin_30617737的博客 542

多体动力学分析软件:SIMPACK_(17).SIMPACK高级编程与脚本

自定义力和约束可以用于模拟更复杂和现实的物理场景。SIMPACK 提供了接口,允许用户通过 Python 脚本来实现自定义力和约束。以下是一个示例,展示如何定义一个自定义力函数并应用于模型。# 定义自定义力函数"""自定义力函数:param t: 时间:param position: 位置:param velocity: 速度:return: 力"""# 创建一个新的 SIMPACK 模型# 添加一个刚体# 添加一个关节# 添加一个自定义力# 设置仿真参数# 运行仿真。

kkchenjj的博客 1421

Springboot集成Dubbo和Zookeeper框架搭建

主要内容:分布式微服务的框架搭建步骤

冬天豆腐的博客 1378

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Dubbo02【搭建provider和consumer】

  本文来给大家介绍下基于Spring配置的方式来搭建dubbo中的服务提供端和消费端 provider和consumer的搭建 1.项目结构   项目采用Maven聚合功能,共有三个模块,结构如下: dubbo-common dubbo-consumer dubbo-provider 模块说明 模块 说明 dubbo-common 公共模块,用来存放服务提供者和消费则所需...

波波烤鸭的博客 2662

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Windows下搭建dubbo和zookeeper环境

Windows下搭建dubbo和zookeeper环境 下载 dubbo 和 war包和jar包 [ dubbo 某大佬的百度云 提取码: cx7w ](https://pan.baidu.com/s/1twS6ixLVS5uBTJp0cKL70w) zookeeper下载地址 下载一个你需要的版本 启动 zookeeper 先解压,然后到conf文件夹下将zoo_sample.cfg 文件,修改成zoo.cfg文件,然后再到bin目录下,启动 zkServer.cmd(双击即可) 如果报错 错

. 874

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

基于springboot和dubbo搭建SOA服务

基于springboot和dubbo工程搭建

youlianyiran的专栏 1370

Dubbo的概念和环境搭建

一、dubbo核心概念 1、简介 Apache Dubbo (incubating) |ˈdʌbəʊ|是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 官网:http://dubbo.apache.org/ 2、基本概念 ​ 服务提供者(Provider):暴露服务的服务提供方,服务提供者在启动时,向注册中心注册自己提供的服务; ​ 服务消费者(Consumer): 调用远程服务的服务消费方,服务消费者在启动时

HX_2021 258

Dubbo项目搭建和Dubbo-admin管理平台和Zookper注册中心搭建

1.Dubbo:(Alibaba) 一款分布式服务框架高性能和透明化的RPC远程服务调用方案SOA服务治理方案 2.Dubbo框架图: 框架解释:注册中心(Registry):Zookerper作为服务的注册中心                 消费者(Consumer):服务调用者                 提供者(Provider):   服务提供者       

Starbucks_star的专栏 1496

Dubbo服务环境搭建以及Dubbo服务的提供者和消费者配置详解

项目中引入了Dubbo,对外需要提供一个Dubbo的接口服务,编写了一个demo,在此提供出来,供初学者引用。 主要包括:在spring项目中引入对dubbo的支持,编写dubbo的provider和consumer,提供一个可测试的小demo。目标:开发环境中添加对Dubbo的支持,编写Dubbo服务的提供者和消费者。环境:Spring4.0, Dubbo2.5.3, Zookeeper3.4.

听从内心的召唤 1万+

Dubbo-Admin管理平台和Zookeeper注册中心的搭建

         林炳文Evankaka原创作品。转载请注明出处http://blog.youkuaiyun.com/evankaka         ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。   ...

Evankaka的专栏 4万+

为什么要用dubbo,dubbo和zookeeper关系,简单的dubbo搭建

为什么要用dubbo?当网站规模达到了一定的量级的时候,普通的MVC框架已经不能满足我们的需求,于是分布式的服务框架和流动式的架构就凸显出来了。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM) 是关键。垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几个应用,以提升...

s_156的博客 379

Dubbo的基本介绍和搭建一个Dubbo环境

什么是Dubbo Dubbo是一个分布式服务框架,提供了高性能以及透明化的RPC远程服务调用解决方法,以及SOA服务治理方案。 Dubbo的核心部分: 远程通信:提供了高性能以及透明化的RPC远程服务调用。 服务治理:提供了包括集群容错、服务自动发现、负载均衡等服务治理方案。 Dubbo的架构: 上图是dubbo的架构图,有三种连接线,绿色实线代表同步操作,绿色虚线代表异步操作,蓝色虚线代表初始化操作。 由图可知:共有5种角色: Provider:暴露服务的服务提供方。 Consumer:调用(消费)服务

qq_40837310的博客 580

dubbo,dubbo和zookeeper关系,简单的dubbo搭建

为什么要用dubbo? 当网站规模达到了一定的量级的时候,普通的MVC框架已经不能满足我们的需求,于是分布式的服务框架和流动式的架构就凸显出来了。 单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM) 是关键。 垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互...

weixin_43818597的博客 437

dubbo消费者调用多个服务_Dubbo的provider和Consumer、搭建Admin管理平台、使用dubbo实现服务调用...

学习主题:Dubbo学习目标: 掌握Dubbo的Provider 掌握Dubbo搭建Admin管理平台 掌握Dubbo的Consumer 掌握使用Dubbo实现服务调用完成单表CRUD一、Dubbo入门案例-启动Provider1.如何通过Dubbo的API启动Provider?Main.main(args);二、Dubbo入门案例-注册信息讲解2.如何查看Provider在Zookeeper中的...

weixin_30942339的博客 743

dubbo简单的搭建单机版环境和集群版环境

一.简单环境(centos7.2下)    1.在zookeeper目录下创建data文件夹    2.修改zookeeper的conf/zoo_sample.cfg为zoo.cfg    3.在zoo.cfg中修改dataDir的值.          4.此时,配置完成.启动         zookeeper/bin/zkServer.sh start          zookeeper/...

lowPoint的博客 2131
上一篇: 报错:Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy
下一篇: Linux常用命令-第一版(笔记分享)
二饭
博客等级 码龄7年 1806粉丝 152原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值