dubbo的常用容错机制
容器机制分析
FailoverClusterInvoker
(dubbo默认的容错机制)失败重试机制。失败自动切换,当出现失败,重试其它服务器。支持重试的,查询接口,支持幂等的写接口
FailsafeClusterInvoker
如果调用失败的化,不用抛出错误,直接打印一个异常log日志就可以了。一般来说,你要是写一些类似与远程日志数据,审计数据,或者是一些可有可无的,可以丢失的一些数据
ForkingClusterInvoker
就是会并行的调用几个服务,如果谁能先返回结果,就用谁的。cpu负载过高。
FailfastClusterInvoker
一旦调用的时候遇到了异常,直接抛出异常,不在进行重试了。
FailbackClusterInvoker
如果调用失败了,会把这个请求记录存储起来。后续根据时间轮的策略,再去隔一段时间去重试。默认是3次调用以后就会进行存储到失败列表中
BroadcastClusterInvoker
广播的形式的。所有的invoker服务实例都会接收到请求
使用方式
注解使用
@Reference(cluster = "failsafe") // consumer
@Service(cluster = "failsafe")// provider
xml配置使用
<dubbo:service cluster="failfast" />
或:
<dubbo:reference cluster="failfast" />
dubbo的常用容错机制相关推荐
- Apache Dubbo集群容错
在分布式应用中(微服务),通常会对服务进行集群部署来保障服务高可用.dubbo用于服务远程调用,远程服务是有可能出现异常情况的,如网络抖动,服务短暂不可用等情况,需要自动容错,服务降级或者mock测试 ...
- Java编程解密-Dubbo负载均衡与集群容错机制
1 Dubbo简介 Dubbo是一款高性能.轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现. 作为一个轻量级RPC框架,Du ...
- Dubbo的容错机制原理
本文是基于 apache dubbo 2.7.0 版本的源码和参考官网的集群章节而成. 为了避免单点故障,现在的应用通常至少会部署在两台服务器上.对于一些负载比较高的服务,会部署更多的服务器.这样 ...
- ack是什么,如何使用Ack机制,如何关闭Ack机制,基本实现,STORM的消息容错机制,Ack机制
1.ack是什么 ack 机制是storm整个技术体系中非常闪亮的一个创新点. 通过Ack机制,spout发送出去的每一条消息,都可以确定是被成功处理或失败处理, 从而可以让开发者采取动作.比如在Me ...
- 深入理解 Flink 容错机制
本文作者:Paul Lin 本文链接: 2019/07/28/深入理解-Flink-容错机制/ 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议.转载请注 ...
- 25.Flink监控\什么是Metrics\Metrics分类\Flink性能优化的方法\合理调整并行度\合理调整并行度\Flink内存管理\Spark VS Flink\时间机制\容错机制等
25.Flink监控 25.1.什么是Metrics 25.2.Metrics分类 25.2.1.Metric Types 25.2.2.代码 25.2.3.操作 26.Flink性能优化 26.1. ...
- Flink核心篇,四大基石、容错机制、广播、反压、序列化、内存管理、资源管理...
Flink基础篇,基本概念.设计理念.架构模型.编程模型.常用算子 大纲: 1.Flink的四大基石包含哪些? 2.讲一下Flink的Time概念? 3.介绍下Flink窗口,以及划分机制? 4.介绍 ...
- Dubbo基础及原理机制
1. 什么是Dubbo? Dubbo是 阿里巴巴公司开源的一个高性能RPC 分布式服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成,现已成为 Apa ...
- Dubbo的原理与机制
Dubbo 前言 在介绍Dubbo之前先了解一下基本概念: Dubbo是一个RPC框架,RPC,即Remote Procedure Call(远程过程调用),相对的就是本地过程调用,在分布式架构之 ...
最新文章
- 手把手教你上手python库pydbgen(附代码、安装地址)
- 为什么static成员必须在类外初始化
- 孔兵 库卡机器人_名企零距离 专访库卡首席执行官 孔兵先生
- 使用keepalived加lvs做负载均衡,访问后端的服务器,2分钟后超时,需要重新登录...
- android tomtom gps location,TomTom智能地图修正 规避不能走的路
- Android中文API(97)—— ContextMenu
- mysql忘记命令后半部分_Mysql 5 易忘的命令
- IQ测试(jzoj 5048)
- git rebase 的使用
- eclipse字体颜色设置
- 用原生js做单页应用
- 简简单单认识call,apply,bind方法
- signature=e77a95aa96da4f165d75bdbdf33ba079,来用百度密语吧!!!
- 面向对象之抽象类与接口【Java】
- T1005: 地球人口承载力估计(信息学一本通C++)
- Unity相机设置CullingMask
- android 适配红米,小米MIUI放出Android Q适配计划,11款手机参与,包括红米Note 7
- MATLAB小知识(三)——输出矩阵到TXT
- catia利用宏批量改名的方法_catia怎么批量改名-catia利用宏批量改名的方法 - 河东软件园...
- IOS开发——获取局域网IP