dubbo

spring cloud alibaba
是网飞在停止运营,开源一些组件之后,我们可以用阿里开源的这一套代替之前的cloud。

Netflix Alibaba
注册中心 eureka nacos
服务提供调用 feign+ribbon dubbo
限流降级 hystrix sentinel
网关 zuul gateway
中间件 rocketmq
分布式事务 seata

dubbo

  • 大致分层:
    • 接口提供配置(服务的接口暴露,以及一些配置,其他层都可以spi替换实现的)
      service+config
    • 集群协调(动态代理+注册中心交互+负载均衡)
      代理+注册层+集群层
    • 调用(具体调用,网络的建立,监控,异步同步切换,序列化处理)
      监控+协议+exchange+网络+序列化
  • 降级限流熔断:
    • 降级是为保护服务的一种策略,直接指定处理流程,或者返回指定信息等。
    • 限流是已并发数为依据,进行降级。
    • 熔断是动态根据实时的服务提供是否正常,进行判断降级。
      模式阶段有正常-熔断-半开放-恢复。
  • dubbo降级
    配置文件里可以指定mock方法,进行降级,会在调用超时,或者异常时走降级逻辑。不具备限流和熔断的机制。可以用组件sentinel来实现。
  • traceId
    可以利用javaAgent机制来实现无入侵式实现。
    是jvmit提供出的一些可以接口,用户可以对其进行扩展,在调用接口时会执行用户实现的业务逻辑。
    利用rpc的filter来实现traceId的传递。

https://share.weiyun.com/S8J51dvZ

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容