• 分布式系统稳定性模式


    本篇文章主要介绍了"分布式系统稳定性模式",主要涉及到分布式系统稳定性模式方面的内容,对于分布式系统稳定性模式感兴趣的同学可以参考一下。

    对集群大访问量的应用很有针对性的一些注意点。

    1.隔离。 发生问题,能控制在一个小的范围。 物理隔离/虚拟(容器,实例,VM)隔离/流控

    2.内存溢出。 代码细节,数据量,进程数控制。

    3.预估数量,阀值控制。 远程获取的变量需谨慎处理

    4.超时 QPS = 1000ms / rt(timeOutAvg) * threadCount *QPS越高,线程越少,越完美。 超时时间设定需合理

    5.流控 比超时更友好,有自我恢复能力

    6.异步调用 减少响应时间,在客户端做异步调用

    7.限流 限制请求数,Web服务器拦截,以QPS为准

    8.降级 对弱依赖有效/最好能做到自动降级,自动恢复

    9.开关 手动降级,关闭服务,临时可能会忽略。需有专人负责

    10.热点缓存 容易被攻击,策略:将被攻击的或者不存在的数据放入Cache,不查询DB。

    11.缓存容灾 多份缓存,并且有对应DB的整套缓存,能独立成为数据源

    12.依赖Jar包冲突 二方包间接依赖冲突检测,mvn:dependency:tree

    13.内部调用优先 路由,同机房优先调用DB,Cache。

    14.依赖诊断和调试 接口调试(在线),一些小脚本,jsp能迅速模拟调用

    15.日志跟踪 traceId ? 所有调用应用打日志,以traceId为Key能查询出完整请求调用日志记录。 缺点是但是日志量会很大

    16.依赖识别 强依赖/弱依赖/依赖系统,调用接口的统计管理。能查出系统的瓶颈。

    17.依赖简化 合并依赖,异步化依赖。

    18.发布规范 daily/prepub/beta

    19.服务治理 Admin系统 XXAdmin 白名单,黑名单之类的管理等

    20.容量规划 物理服务器备机准备

    21.预演 模拟正式环境处理问题,能暴露很多问题,帮助很大

    22.告警 短信等,及时处理线上问题

    23.资源调度 优先级资源划分,想法比较好,但比较难做到

  • 相关阅读:
    ie 标题写入问题
    预览图片
    form表单submit事件
    SpringGraph 20101030 11:08[转]
    flexunable to transcode image
    navicate导入和导出数据库(转)
    Flex转自新浪微博
    zk中的Datebox中得到Timestamp
    反向代理
    flash builder sdk 4[转自IYeye]
  • 原文地址:https://www.cnblogs.com/dassmeta/p/7007927.html
Copyright © 2020-2023  润新知