Dubbo调试指南:Java调试技巧解析

0 下载量 94 浏览量 更新于2024-08-31 收藏 279KB PDF 举报
"这篇文章除了介绍如何使用和调试Java中的Dubbo框架,还强调了Dubbo在实际企业环境中的应用价值,并提供了Dubbo架构的整体概览,以及各个节点的角色解释,帮助读者理解Dubbo的工作原理。" 文章详细探讨了Java调试技能在处理Dubbo框架时的具体应用。Dubbo是一个广泛使用的远程服务调用框架,它基于Spring进行配置,使得配置过程更加简便。文章指出,尽管Dubbo与其他同类框架在性能上可能有所差异,但其在实际公司项目中的表现得到了认可。 在介绍Dubbo架构时,文章提到了几个关键节点的角色: 1. Provider: 提供服务的节点,它向注册中心注册自己的服务,以便其他节点能够找到并调用。 2. Consumer: 负责调用远程服务的节点,它会在启动时订阅所需的服务,接收注册中心推送的服务提供者地址列表。 3. Registry: 注册中心,负责服务的注册和发现,它通过长连接保持与服务提供者和消费者的通信,确保服务信息的实时更新。 4. Monitor: 监控中心,收集服务调用的统计信息,如调用次数和时间,以供分析和展示。 文章还详细阐述了Dubbo的调用流程: - 服务提供者启动时注册服务,服务消费者启动时订阅服务。 - 注册中心将服务提供者信息推送给消费者,消费者根据负载均衡策略选择服务提供者进行调用。 - 消费者和提供者各自记录调用次数和时间,并定期将这些统计数据发送到监控中心。 此外,文章还提到,Dubbo的连通性设计使得注册中心的压力较小,因为它只负责地址的注册和查找。即使注册中心和监控中心发生故障,已运行的提供者和消费者仍能继续工作,因为消费者持有服务提供者的本地缓存。 这篇文章不仅提供了关于Java调试Dubbo的基本技巧,还深入介绍了Dubbo的工作机制和各个组件的功能,对于理解和服务于基于Dubbo的分布式系统具有很高的参考价值。通过学习这些知识,开发者可以更有效地诊断和解决问题,优化服务性能,提升开发效率。
2018-07-25 上传
Doe 发布 [V1.0.0] 前段时间排查某问题的时候,想要快速知道某些dubbo接口(三无)的响应结果,但不想启动项目(因为这些项目不是你负责的,不会部署而且超级笨重),也不想新建一个dubbo客户端项目(占地方),也不想开telnet客户端连接口(麻烦而且有限制)。所以扣了dubbo的netty模块源码,封装了个收发客户端集成一个工具,可以快速调试dubbo接口。源码地址:https://github.com/VIPJoey/doe 极简模式 普通模式 目录结构 mmc-dubbo-api 接口项目,主要用于测试。 mmc-dubbo-provider dubbo提供者项目,主要用于测试。 mmc-dubbo-doe 主项目,实现dubbo接口调试。 deploy 部署文档 功能特性 极简模式:通过dubbo提供的telnet协议收发数据。 普通模式:通过封装netty客户端收发数据。 用例模式:通过缓存数据,方便下一次操作,依赖普通模式。 增加依赖:通过调用maven命令,下载jar包和热加载到系统,主要用来分析接口方法参数,主要作用在普通模式。 依赖列表:通过分析pom文件,展示已经加载的jar包。 其它特性 springboot 整合 redis,支持spring el 表达式。 springboot 整合 thymeleaf。 springboot 整合 logback。 netty rpc 实现原理。 开发环境 jdk 1.8 maven 3.5.3 dubbo 2.6.1 lombok 1.16.20 idea 2018 windows 7 安装步骤 安装jdk 安装maven,并设置好环境变量,仓库目录。 进入mmc-dubbo-api目录,执行mvn clean install命令,省api的jar包。 进入mmc-dubbo-doe目录,执行mvn clean install 命令,在target目录生成dubbo-doe-1.0.0-RELEASE.jar 在F盘(可以任意盘)创建目录F:\app\doe 把dubbo-doe-1.0.0-RELEASE.jar拷贝到F:\app\doe 把deploy目录中的所有文件拷贝到F:\app\doe 如果您电脑安装了git bash,可以在bash窗口运行 ./deploy.sh start,否则如果没有安装git bash,只能打开cmd切换到F:\app\doe目录,然后执行java -jar dubbo-doe-1.0.0-RELEASE.jar --spring.profiles.active=prd 打开浏览器,访问地址:http://localhost:9876/doe/home/index 全剧终