dubbo
varyall
这个作者很懒,什么都没留下…
展开
-
详解在spring boot中配置多个DispatcherServlet
spring boot为我们自动配置了一个开箱即用的DispatcherServlet,映射路径为‘/',但是如果项目中有多个服务,为了对不同服务进行不同的配置管理,需要对不同服务设置不同的上下文,比如开启一个DispatcherServlet专门用于rest服务。传统springMVC项目在传统的springMVC项目中,配置多个DispatcherServlet很轻松,在web.xml...转载 2020-02-12 03:02:48 · 2315 阅读 · 0 评论 -
dubbo获取HttpServletRequest和HttpServletResponse
在dubbo中我们需要获取HttpServletRequest或HttpServletResponse,对请求或是返回进行处理。对于HttpServletRequest我们可以通过注解的方式进行获取,如下public String getId( @Context HttpServletRequest request) { }对于HttpServletRespon...转载 2020-02-12 02:18:59 · 3328 阅读 · 1 评论 -
Dubbo 使用rest协议发布http服务
演示用GitHub地址:https://github.com/suyin58/dubbo-rest-example1Dubbo_rest介绍Dubbo自2.6.0版本后,合并了dubbox的restful风格的接口暴露方式,其restful的处理采用的是jboss.resteasy框架。使用该功能可以简便的将dubbo服务直接通过http的方式发布,不需要再使用中转的http...转载 2020-01-23 23:08:07 · 2938 阅读 · 0 评论 -
dubbo限流
欢迎来到梁钟霖个人博客网站。本个人博客网站提供最新的站长新闻,各种互联网资讯。 还提供个人博客模板,最新最全的java教程,java面试题。在此我将尽我最大所能将此个人博客网站做的最好! 谢谢大家,愿大家一起进步! 背景既然我们已经使用springboot+dubbo 那么也不放继续深入下去了【springcloud确实各种特性很垂涎哈!】对于大量的请求我们存在一些限流需求【比如发...转载 2018-09-09 16:51:17 · 3270 阅读 · 0 评论 -
Dubbo源码分析----过滤器之ActiveLimitFilter
ActiveLimitFilter也是用来做并发控制的,区别在于ExecuteLimitFilter作用于服务端,而ActiveLimitFilter作用于客户端。看下官网的例子<dubbo:service interface="com.foo.BarService" actives="10" />即从客户端方面限制了服务最多有10个并发接下来看下ActiveLimi...转载 2018-09-09 16:57:27 · 885 阅读 · 0 评论 -
Dubbo源码之服务端并发控制——ExecuteLimitFilter
上一篇关于《Dubbo客户端并发控制——ActiveLimitFilter》 作用,设计原理,及配置方式。这篇是关于Dubbo服务端Filter组件扩展 ExecuteLimitFilter ,它可以限制服务端的方法级别的并发处理请求数。 当请求数超过限制时,服务端采用的是非阻塞处理,如果超出并发数量,则直接进行失败处理(这里抛RPCException异常),这里与客户端限流ActiveLim...转载 2018-09-09 16:59:57 · 1022 阅读 · 0 评论 -
dubbo之RpcContext
dubbo之RpcContextRpcContext 是一个 ThreadLocal 的临时状态记录器,当接收到 RPC 请求,或发起 RPC 请求时,RpcContext 的状态都会变化。比如:A 调 B,B 再调 C,则 B 机器上,在 B 调 C 之前,RpcContext 记录的是 A 调 B 的信息,在 B 调 C 之后,RpcContext 记录的是 B 调 C 的信息。使用...转载 2018-09-12 09:42:57 · 2778 阅读 · 1 评论 -
Dubbo之旅--集群容错和负载均衡
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jnqqls/article/details/46702103 当我们的系统中用到Dubbo的集群环境,因为各种原因在集群调用失败时,Dubbo提供了多种容错方案,缺省为failover重试。 Dubbo的集群容错在这里想说说他是因为我们实际的项目中出现了此...转载 2018-09-12 14:40:29 · 240 阅读 · 0 评论 -
实现dubbo服务降级
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wsm0712syb/article/details/61413276dubbo降级服务使用dubbo在进行服务调用时,可能由于各种原因(服务器宕机/网络超时/并发数太高等),调用中就会出现RpcException,调用失败。服务降级就是指在由于非业务异常导致的服务不可用时(上面举得例子)...转载 2018-09-20 19:23:07 · 3818 阅读 · 0 评论 -
Dubbo调用过程监控
MonitorFilter 主要对调用过程进行监控,public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { if(invoker.getUrl().hasParameter(Constants.MONITOR_KEY)) { // 供方必...转载 2018-09-20 23:39:33 · 541 阅读 · 0 评论 -
Dubbo阅读笔记——并发控制和连接控制
并发控制限制com.foo.BarService的每个方法,服务器端并发执行(或占用线程池线程数)不能超过10个:<dubbo:service interface="com.foo.BarService" executes="10" />限制com.foo.BarService的sayHello方法,服务器端并发执行(或占用线程池线程数)不能超过10个:<dubbo...转载 2018-09-21 15:16:47 · 314 阅读 · 0 评论 -
DUBBO Thread pool is EXHAUSTED!
一、问题 在测试环境遇到的异常信息,如下:16-10-17 00:00:00.033 [New I/O server worker #1-6] WARN com.alibaba.dubbo.common.threadpool.support.AbortPolicyWithReport - [DUBBO] Thread pool is EXHAUSTED! Thread Name: ...转载 2018-09-22 15:58:24 · 1165 阅读 · 0 评论 -
spring boot 2.x . dubbo 2.7.1 bug
https://github.com/spring-cloud-incubator/spring-cloud-alibaba/blob/master/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/autoconfigure/DubboServiceAutoConfiguration....转载 2019-05-31 22:41:30 · 552 阅读 · 0 评论 -
dubbo分布式日志跟踪
dubbo分布式日志追踪:需要修改两个地方,一个是consumer端的 InvokerInvocationHandler.java,红色是修改的地方public class InvokerInvocationHandler implements InvocationHandler { private final Invoker<?> invoker; pu...原创 2018-09-09 14:08:12 · 2618 阅读 · 0 评论 -
Dubbo调用过程监控
MonitorFilter 主要对调用过程进行监控,public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException { if(invoker.getUrl().hasParameter(Constants.MONITOR_KEY)) { // 供方必...转载 2018-09-09 10:51:44 · 1036 阅读 · 0 评论 -
dubbo多协议和多注册中心
一、配置dubbo多协议模式1、默认协议 Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。Dubbo缺省协议不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。 <dubbo:protocolname="dubbo"port="20880"/> Set default...转载 2018-09-07 21:12:25 · 1263 阅读 · 0 评论 -
Dubbo通信模型
Dubbo和通信结合通信实现服务的发布过程使用通信功能: Protocol.export()时会为每个服务创建一个Server服务的引用过程使用通信功能: Protocol.refer()时会创建一个Client整个类结构及调用关系如下:从图中可以看出,Dubbo的Transporter层完成通信功能,底层的Netty和Mina委托给统一的C转载 2017-12-18 16:07:00 · 306 阅读 · 0 评论 -
dubbo_远程同步调用原理
Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。 Dubbo缺省协议,使用基于mina1.1.7+hessian3.2.1的tbremoting交互。连接个数:单连接连接方式:长连接传输协议:TCP传输方式:NIO异步传输序列化:Hessian二进制序列化适用范围:传入传出参数数据包较小(建议小于100K),消费者...转载 2018-07-02 18:12:20 · 914 阅读 · 0 评论 -
Dubbo分布式日志追踪,多线程不能获取窜ID和IP问题
接着上一篇日志,当用MDC或者ThreadContext来put或者get数据的时候,不同线程是获取不到的,他们都是ThreadLocal维护,所以线程独立。如果需要子线程获取则将参数传入,在Thread的run方法执行的时候将传入的ID和IP都put到MDC或者ThreadContext中。这里使用ThreadContext:<context:component-scan ba...转载 2018-08-09 11:53:34 · 1454 阅读 · 0 评论 -
Dubbo分布式日志追踪
很多互联网公司都用的dubbo分布式框架进行微服务的开发,一个大系统往往会被拆分成很多不同的子系统,并且子系统还会部署多台机器,当其中一个系统出问题了,查看日志十分麻烦所以我们需要一个固定的流程ID和机器ip地址等来把所有的日志穿起来,当然可以通过调用其他接口时参数进行传递,但是这样子对代码的耦合性太强,对代码有侵入性。我们可以通过dubbo的filter 结合slf4j的MDC或者log...转载 2018-08-09 12:03:21 · 1767 阅读 · 1 评论 -
dubbo 服务跟踪
本文的目标是改进dubbo,在各个dubbo服务之间透传traceId,实现服务跟踪一、关于RPC 在大型系统中,一个对外http服务的背后往往隐匿了多个内部服务之间的相互调用。因为性能、开发成本层面的考量,http协议并不适合内部服务之间的调用,为此产生了thrift、dubbo 等优秀RPC框架。 thrift 的由facebook 开发,跨语言支持丰富是其最大的亮点,th...转载 2018-07-31 15:42:25 · 771 阅读 · 1 评论 -
Dubbo源代码分析九:优雅停机
虽然我们系统的用户体验和数据一致性不应该完全靠优雅停机来保证,但作为一流的RPC框架,优雅停机的功能必不可少,Dubbo用户手册有对优雅停机做一个简单的叙述: Dubbo是通过JDK的ShutdownHook 来完成优雅停机的,所以如果用户使用 kill -9 PID 等强制关闭指令,是不会执行优雅停机的,只有通过 kill PID时,才会执行。服务提供方:停止时,先标记为不接收新请求...转载 2018-08-01 00:47:34 · 2101 阅读 · 0 评论 -
dubbo优雅停机
dubbo优雅停机Dubbo是通过JDK的ShutdownHook来完成优雅停机的,所以如果用户使用”kill -9 PID”等强制关闭指令,是不会执行优雅停机的,只有通过”kill PID”时,才会执行。原理服务提供方 停止时,先标记为不接受新的请求,新请求过来时直接报错,让客户端重试其他机器; 然后,检测线程池中的线程是否正在运行,如果有,等待所有线程执行完成,除非超时,则...转载 2018-08-01 00:49:38 · 863 阅读 · 0 评论 -
Dubbo 默认线程池fixed
@SPI("fixed")public interface ThreadPool { /** * 线程池 * * @param url 线程参数 * @return 线程池 */ @Adaptive({Constants.THREADPOOL_KEY}) Executor getExecutor(URL url);...转载 2018-08-09 23:16:15 · 9438 阅读 · 0 评论 -
dubbo 线程池
在dubbo调用过程中被调用方有两个线程池:io线程池,业务线程池。这也是dubbo调优的点。配置信息:<dubbo:protocol name="dubbo" dispatcher="all" threadpool="fixed" threads="100" />Dispatcherall 所有消息都派发到线程池,包括请求,响应,连接事件,断开事件,心跳等。 ...转载 2018-08-09 23:19:21 · 618 阅读 · 0 评论 -
放弃Dubbo,选择最流行的Spring Cloud微服务架构实践与经验总结
【51CTO.com原创稿件】Spring Cloud 在国内中小型公司能用起来吗?从 2016 年初一直到现在,我们在这条路上已经走了一年多。在使用 Spring Cloud 之前,我们对微服务实践是没有太多的体会和经验的。从最初的开源软件云收藏来熟悉 Spring Boot,到项目中的慢慢使用,再到最后全面拥抱 Spring Cloud。这篇文章给大家介绍我们使用 Spring B...转载 2018-08-28 21:28:30 · 450 阅读 · 1 评论 -
dubbo_远程同步调用原理
Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。 Dubbo缺省协议,使用基于mina1.1.7+hessian3.2.1的tbremoting交互。连接个数:单连接 连接方式:长连接 传输协议:TCP 传输方式:NIO异步传输 序列化:Hessian二进制序列化 适用范围:传入传出参数...转载 2018-08-28 21:47:35 · 401 阅读 · 0 评论 -
Dubbo实战(三)多注册中心配置
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/FX_SKY/article/details/51935533本文将展示如何在Dubbo中进行多注册中心配置。开发环境JDK 1.7 Maven 3.3.9 Spring 4.2.7.RELEASESpring配置<?xml version="1.0" encoding=...转载 2018-09-07 20:52:18 · 805 阅读 · 0 评论 -
DUBBO用户指南
随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构 当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。 此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。 垂直应用架构 当访问量逐渐增大,单一应用增加机器带来的加转载 2016-12-26 21:51:00 · 1957 阅读 · 0 评论