• hystrix(1) 概述


      首先我们来讲一下hystrix解决什么问题。在大型分布式系统中经常会存在下面的几类问题:

        1.大型分布式系统中,服务之间相互依赖,如果依赖的服务发生异常,那么当前服务也会出现异常,这样将会导致联级的服务不可用。

        2.如果依赖服务接收超过执行能力的请求,请求量过大或者执行延时,最终也会导致联级延时和资源耗尽。

        3.依赖服务间的调用缺乏系统监控,很难进行实时调控。

      如何解决上面的三个问题:

        1.针对第一个问题,解决方案一般为提供降级策略,当依赖服务出现异常时,执行降级策略。

        2.1.针对第二个问题,第一个方案是提供延时检测和熔断机制,当依赖服务的延时超过设定延时时,进行服务调用熔断,并且给依赖服务一定时间恢复性能。

        2.2针对第二个问题,第二个方案是提供限流策略,对每个依赖服务设置限流策略。

        3.针对第三个问题,对服务间的调用发布执行的metrics信息。

      hystrix就是这样的一个框架,来实现和解决上面的几个问题。Hystrix解决策略是通过封装和代理服务调用,提供以下功能:

      1.提供降级策略,当依赖服务出现异常时,执行降级策略。

      2.提供延时检测,当依赖服务执行时间超过设定延时时,执行降级策略。

      3.提供限流策略,对每个依赖服务设置限流策略。

      4.提供熔断机制,让服务快速降级,并且给依赖服务一定时间恢复性能。

      5.提供实时执行metrics信息。

  • 相关阅读:
    Hadoop Gateway 部署
    java 命令--备忘
    整理下常用硬件性能参数
    python 脚本备份 mysql 数据库到 OSS
    pip 更换国内源
    记录闭包和立即执行函数
    Django 中文乱码问题&富文本显示
    mysql exceeded the 'max_questions' resource 记录
    sql server 数据字典的妙用
    Sublime Text指南
  • 原文地址:https://www.cnblogs.com/zhangwanhua/p/8241673.html
Copyright © 2020-2023  润新知