Dubbo系列(十一)Dubbo应用之集群服务
来源:互联网 发布:听新闻软件 编辑:程序博客网 时间:2024/05/17 02:20
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/72354649
集群的目的:实现高可用,容错功能,集群的服务器不要放在一台物理机,要分散节点,才能实现高可用,高容错性能,一台提供者挂了,还有其他提供者,保证系统正常、稳定运行。
一、环境准备
edu-provider-01(192.168.1.121)
edu-provider-02(192.168.1.122)
用户服务:pay-service-user
交易服务:pay-service-trade
我在121,122服务器同时启动这两个服务
在DubboAdmin管理控制台中可以查看到两台机器的服务都注册成功
这里我可以查询交易信息
我先关掉121的交易服务
我再关掉122的交易服务
这里我查询交易信息就会出现异常
我在121服务上再开启交易服务,又可以查询交易信息了
标签:
<dubbo:service>提供方配置标签,粒度粗<dubbo:service>:服务发布标签,例,在这个上配置容错,粒度细
在这个上配置容错,粒度细
属性:cluster 类型:string
是否必填:可选 缺省值:failover
作用:性能调优 集群方式:可选:failover/failfast/failsafe/failback/forking
1、Failover Cluster
失败自动切换,当出现失败,重试其它服务器。(缺省) 通常用于读操作,但重试会带来更长延迟。 可通过retries="2"来设置重试次数(不含第一次)。
2、Failfast Cluster
快速失败,只发起一次调用,失败立即报错。 通常用于非幂等性的写操作,比如新增记录。
3.Failsafe Cluster
失败安全,出现异常时,直接忽略,通常 用于写入审计日志等操作
4.Failback Cluster
失败自动恢复,后台记录失败请求,定时重发,通常用于消息通知操作。
5.Forking Cluster
并行调用多个服务,只要一个成功即返回,通常用于实时要求较高的读操作,但需要浪费更多的服务器资源。可通过forks="2"来设置最大并发数。
在实际项目中,生产环境中,我们用failover模式时可以这样设计服务接口,遵循接口隔离原则 ,查询服务与写操作服务隔离,
查询接口我们可以配置retries="2"
在写操作接口我们配置retries="0" ,如果不设置为0, 超时,会重新连接,会出现重复写的情况,所以使用failover模式时,我们要进行读写操作接口隔离,且写操作接口retries=0
阅读全文
0 0
- Dubbo系列(十一)Dubbo应用之集群服务
- Dubbo之——Dubbo服务集群
- Dubbo之——Dubbo服务集群
- Dubbo系列(四)Dubbo之服务降级
- Dubbo系列(二)Dubbo之dubbo+zookeeper构建高可用分布式集群
- Dubbo系列(十三)Dubbo之将Dubbo服务打包成Jar包
- 初识Dubbo 系列之8-Dubbo 集群容错
- dubbo服务集群
- dubbo服务集群配置
- Dubbo服务集群容错配置(四)
- Dubbo框架应用之(二)--服务治理
- Dubbo服务集群容错配置
- Dubbo系列(一)Dubbo之基础概念
- Dubbo系列(三)Dubbo之service实际调用注意事项
- Dubbo系列(五)Dubbo之监控中心Monitor
- Dubbo系列(七)Dubbo源码分析之结构描述
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 局部立体匹配算法BM中的匹配代价聚合方法
- 谷歌浏览器页面卡死的时候:快捷键Shift+Esc来了
- MyBatis解决Update动态SQL逗号的问题
- 实时视频相关
- CSS控制列表样式属性list-style有哪些?怎么用?
- Dubbo系列(十一)Dubbo应用之集群服务
- Eclipse中导入SVN库里的Maven项目
- 流、浮动和定位
- android自定义view之 判断一个点是否在制定矩形内
- (测试通过)Capture NX2破解方法
- tinker第1部-集成
- 数据分析,我该想些什么-以共享单车为例
- echarts的中文乱码问题
- c++运算符优先级