在前面的文章中,我们讲解了Dubbo是如何创建Provider Bean的(Dubbo之provider bean注册详解),其本质就是为每一个使用<dubbo:service/>声明的接口都使用一个ServiceBean进行封装。本文主要讲解ServiceBean是如何为每一个prov
转载
2024-07-31 23:13:13
75阅读
(一)引言解决一眼无法发现的代码问题有两种方式最靠谱,第一种是查日志,第二种就是dubug。但是我发现很多程序员只会打上一个最简单的普通断点,这可完全没有发挥出idea的强大,这一期就带来我认为idea中最实用的debug教程。(二)调试按钮介绍打开debug模式后可以看到下面这些按钮,我接下来一个个介绍:1、Show Execution Point (Alt + F10):跳回到当前代码执行的行
转载
2024-05-08 19:56:29
161阅读
情况是这样的,现在的产品出现了一个 bug ,需要及时排查快速解决,你是怎么样解决的呢?解决:登陆服务器,查看日志,看一下哪里有问题,然后本地运行程序进行debug ,解决后,在重新打包部署到服务器。现在我们开发项目,Java 项目普遍都是使用 Idea 做为主流开发工具,springboot 技术栈来快速构建项目,然后以打 jar 包的方式来部署项目。现在我们就来通过远程调试的方式来快速 deb
最近在debug dubbo代码过程中遇到的很有趣的问题我们都知道dubbo ReferenceBean是消费者的spring bean包装,为了查一个consumer端的问题,在ReferenceBean的父类ReferenceConfig的 T get()方法(140行)打上了一个断点。 当我debug 跟进init方法之后发现,ReferenceConfig的成员变量initialized(
转载
2024-03-20 08:25:49
47阅读
本来是在debug dubbo的reference bean的init()过程,因为ReferenceBean是继承了Spring FactoryBean接口的,所以初始化入口自然就是FactoryBean定义的函数,getObject()。在该方法内,只显示调用了ReferenceConfig.get()。内容如下:public synchronized
复制代码可以看到,核心的初始化代码就在
转载
2024-03-26 16:46:04
47阅读
2018年5月开始接触dubbo接口测试,测试对象主要是为业务提供基础数据增删改查相关的微服务接口,接口逻辑简单,但发现的bug还是不少。总结微服务类接口测试点及常见bug如下: 取值考虑常见问题注意项 参数空null[]“”undefined1、空指针异常 java.lang.NullPointerException 必填的参数值不可以为空,需要判空处理正确1、可以调用接口,
转载
2024-04-16 09:09:42
31阅读
1. 分布式系统中相关概念1.1 互联网项目特点及目标1.1.1 特点:用户多流量大、并发高海量数据易受攻击功能繁琐变更快 1.1.2 指标及相关目标互联网项目三高目标:高并发、高可用(99.999%)、高可拓展其他:可伸缩、安全性、敏捷性1.2 集群&分布式集群:很多人一起干,干一样的事。一个业务模块,部署在多个服务器上。是一个横向概念。分布式:很多人一起干,干不一样的事。这些
转载
2023-09-06 18:31:05
8阅读
文章目录1. 背景2. 使用AOP+注解来自定义配置日志打印3. 使用dubbo filter+注解来自定义配置日志打印 1. 背景近期服务器的磁盘总是报内存不够,排查了一下发现日志暴涨,业务量增加是无可避免的,翻了一下日志,发现很多接口把入参和出参都打印了,比如分页数据结果十分庞大,属于无效日志,不应该打印。为了自由地控制接口入参和出参的打印,做了一个决定:入参必须打,出参可自定义打印。自定义
转载
2024-10-10 16:50:49
56阅读
Dubbo基础一之实战初体验 - 池塘里洗澡的鸭子体验了两种配置方式一种注解一种xml。其中xml是在注解配置失败没有找到解决方法后选择xml替代体验的。那么Dubbo支持多少中配置方式呢?一般分为以下几种且每种配置方式各有不同: 1)注解:基于注解可以快速的将程序配置无效多余的配置信息,包含提供者和消费者。但是这种方式有一个弊端就是有些时候配置信息并不是特别好找,需要查找问题时
转载
2024-04-25 14:28:52
75阅读
dubbo的四种配置方式 dubbo的配置主要分为三大类,服务发现,服务治理和性能调优 服务发现类:表示该配置用于服务的注册于发现,目的是让消费者找到生产者 服务治理类:表示该配置用于治理服务间的关系,或为开发测试提供便利条件 性能调优类:表示该配置用于性能调优,不同的选项会对性能产生不同的影响。&nb
转载
2024-03-04 06:26:12
51阅读
Dubbo性能调优参数需要根据各自业务进行调整。建议多在provider端配置属性,原因如下:作为服务的提供方,比服务消费方更清楚服务的性能参数,如调用的超时时间、合理的重试次数等在 Provider 端配置后,Consumer 端不配置则会使用 Provider 端的配置,即 Provider 端的配置可以作为 Consumer 的缺省值 。否则,Consumer 会使用 Consumer 端的
转载
2024-03-01 14:28:57
141阅读
此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。 本文为服务治理框架Dubbo性能调优配置本系列文章中所使用的框架版本为Spring Boot 2.0.3-R
转载
2024-04-12 16:04:50
98阅读
记上篇学习,我们了解到了dubbo的xml配置文件配置方式。接下来我们继续介绍dubbo的其他的集中配置方式。Properties配置方式: DUBBO 在读取配置的时候会先读取 XML文件中的配置,如果没找到就会默认去读取resources目录下的 dubbo.properties 文件。而 dubbo.properties 的配置方式与 X
转载
2024-02-26 06:47:43
31阅读
上次搭建了简单dubbo项目。今天就来说说dubbo中常用的配置含义。启东时检查(check=“true"),在dubbo服务起来的时候,回检查该服务是否有对应的提供者,一般配置在consumer方。 默认为true。 <dubbo:reference id="helloDubboProvider1" check="false" interface="com.chenyi.dubbochen
转载
2023-12-23 22:34:32
0阅读
一、配置原则 JVM 启动 -D 参数优先,这样可以使用户在部署和启动时进行参数重写,比如在启动时需改变协议的端口。XML 次之,如果在 XML 中有配置,则 dubbo.properties 中的相应配置项无效。Properties 最后,相当于缺省值,只有 XML 没有配置时,dubbo.properties 的相应配置项才会生效,通常用于共享公共配置,比如应用名。 二
转载
2024-03-08 17:15:32
120阅读
接着上一节的内容,上一节我们分析到了com.alibaba.dubbo.config.ServiceConfig#doExport方法,接下来我们继续分析com.alibaba.dubbo.config.ServiceConfig#doExportUrls方法private void doExportUrls() {
//获取需要注册的url
List<URL> reg
转载
2024-06-12 10:50:13
35阅读
1.配置优先级优先级
方法级接口级全局配置消费方提供方建议:在Provider端尽量多配置Consumer端属性2.常用配置项优化集群容错
定义
当有多个服务提供方时,将多个服务提供方组织成一个集群,并伪装成一个提供方。dubbo会根据Router(路由)和LoadBalance(负载均衡)策略选择一个服务调用,如果调用失败,则会重选模式
Failover Clus
转载
2023-07-09 22:34:47
78阅读
对于dubbo的配置,采用的是spring的一个解析配置文件的机制。与spring是连接的,也是解析成BeanDefinition,让spring管理生成对象放入spring容器中。(具体从spring加载xml转换为beanDefinition的过程可以去看我的另一篇博客spring 源码学习笔记(一)—— spring ioc 之加载XML转换为BeanDefinition)dubbo对于配置
转载
2024-06-28 16:12:25
25阅读
1、Dubbo 配置Dubbo 配置官方文档:https://dubbo.apache.org/zh/docs/v3.0/references/configuration/1.1 服务提供者配置将服务提供者注册到注册中心(暴露服务)让服务消费者去注册中心订阅服务提供者的服务地址引入 maven 依赖<!-- https://mvnrepository.com/artifact/com.ali
转载
2023-12-17 14:11:33
136阅读
dubbo简介随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。 此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用
转载
2023-08-27 18:12:20
369阅读