随笔分类 -  Dubbo

摘要:| | spring cloud | dubbo | | | | | | 协议 | HTTP | 默认为dubbo | | 编码 | JSON | hessian(二进制) | | 连接 | 短连接,依赖连接池 | 默认是单一长连接,也支持短连接 | | 最大连接数 | 支持,通过配置tomcat实 阅读全文
posted @ 2020-11-20 18:56 ralgo 阅读(186) 评论(0) 推荐(0)
摘要:线程池 Dubbo有两种线程池,第一种是I/O线程池,第二种是业务线程池。I/O线程池主要是收包发包,接收新的连接,业务线程则是执行我们的业务代码(调用接口的实现类)。I/O线程数默认是CPU的个数+1,业务线程数默认是200。 与其他半同步半异步的模型相似,Dubbo的业务线程池也配备了队列,不过 阅读全文
posted @ 2020-11-15 17:50 ralgo 阅读(733) 评论(0) 推荐(0)
摘要:actives参数隶属于标签dubbo:reference,是客户端独有的参数。它的官方定义是“每服务消费者每服务每方法最大并发调用数”。 示例代码在 https://github.com/ralgond/dubbo-example/releases/tag/v0.0.7 v0.0.7增加了一个类来 阅读全文
posted @ 2020-11-15 11:39 ralgo 阅读(1473) 评论(0) 推荐(0)
摘要:示例代码在:https://github.com/ralgond/dubbo-example/releases/tag/v0.0.6 accepts隶属于dubbo:protocol标签,官方文档对其的定义是:“服务提供方最大可接受连接数”。 我们修改下示例代码,首先修改dubbo-example- 阅读全文
posted @ 2020-11-15 10:21 ralgo 阅读(1269) 评论(0) 推荐(0)
摘要:示例代码在:https://github.com/ralgond/dubbo-example/releases/tag/v0.0.6 v0.0.6相对于v0.0.5增加了接口GreetingService.throwRuntimeException,以及调用这个接口的客户端com.github.ra 阅读全文
posted @ 2020-11-13 16:14 ralgo 阅读(486) 评论(0) 推荐(0)
摘要:上一篇博文讲到服务器端设置connections无效后,我再查询了官方文档,connections参数的定义为:“对每个提供者的最大连接数,rmi、http、hessian等短连接协议表示限制连接数,dubbo等长连接协表示建立的长连接个数”。我认为如果此参数并不是限制服务端的,那么这个参数很有可能 阅读全文
posted @ 2020-11-13 09:14 ralgo 阅读(1880) 评论(0) 推荐(0)
摘要:executes参数的官方定义是:“服务提供者每服务每方法最大可并行执行请求数”,那么现在的问题是假设executes=1,同时有两个请求达到服务器,第一个请求自然能处理,但是第二个请求会怎么处理呢?我通过实验发现dubbo的客户端会直接报错。可以推理出dubbo并不会用队列的方式将第二个请求缓存起 阅读全文
posted @ 2020-11-10 12:10 ralgo 阅读(2214) 评论(0) 推荐(0)
摘要:在实际的生产环境中,我们不能假设服务端的能力是无穷大的,能接入任意数量的连接,接受任意数量的请求都是不实际的想法。我们在实现服务时都会考虑到一些上限,比如最大连接数,最大请求数。connections参数隶属于dubbo::service标签,按照官方文档的说法:“对每个提供者的最大连接数,rmi、 阅读全文
posted @ 2020-11-09 17:26 ralgo 阅读(1465) 评论(0) 推荐(0)
摘要:1、Dubbo consumer端是线程安全的吗? 是的,不过这个答案是推理而来,不是直接读源代码得到的。因为Dubbo支持Spring Boot,Spring Boot是多线程模型,默认线程数是200,每个请求会在一个单独的线程处理,Dubbo的consumer端的实现是一个单例,如果这个单例不是 阅读全文
posted @ 2020-11-01 13:11 ralgo 阅读(346) 评论(0) 推荐(0)