首页 > 其他分享 >凤凰架构——透明多级分流

凤凰架构——透明多级分流

时间:2022-11-03 09:27:18浏览次数:48  
标签:单点 系统 多级 部件 分流 架构 凤凰

我们应该意识到不同的设施、部件在系统中有各自不同的价值。

  • 有一些部件位于客户端或网络的边缘,能够迅速响应用户的请求,避免给后方的I/O与CPU带来压力,典型如本地缓存、内容分发网络、反向代理等。
  • 有一些部件的处理能力能够线性拓展,易于伸缩,可以使用较小的代价堆叠机器来获得与用户数量相匹配的并发性能,应尽量作为业务逻辑的主要载体,典型如集群中能够自动扩缩的服务节点。
  • 有一些部件稳定服务对系统运行有全局性的影响,要时刻保持容错备份,维护高可用性,典型如服务注册中心、配置中心。
  • 有一些设施是天生的单点部件,只能依靠升级机器本身的网络、存储和运算性能来提升处理能力,如位于系统入口的路由、网关或者负载均衡器(它们都可以做集群,但一次网络请求中无可避免至少有一个是单点的部件)、位于请求调用链末端的传统关系数据库等,都是典型的单点部件。

对系统进行流量规划时,我们应该充分理解这些部件的价值差异,有两条简单、普适的原则能指导我们进行设计。

  • 第一条原则是尽可能减少单点部件。如果某些单点是无可避免的,则应尽最大限度减少到达单点部件的流量。在系统中往往会有多个部件能够处理、响应用户请求,譬如要获取一张存储在数据库的用户头像图片,浏览器缓存、内容分发网络、反向代理、Web服务器、文件服务器、数据库都可能提供这张图片。恰如其分地引导请求分流至最合适的组件中,避免绝大多数流量汇集到单点部件(如数据库),同时依然能够或者在绝大多数时候保证处理结果的准确性,使单点系统在出现故障时自动而迅速地实施补救措施,这便是系统架构中多级分流的意义。
  • 另一条更关键的原则是奥卡姆剃刀原则。作为一名架构设计者,你应对多级分流的手段有全面的理解与充分的准备,同时清晰地意识到这些设施并不是越多越好。在实际构建系统时,你应当在有明确需求、真正必要的时候再去考虑部署它们。不是每一个系统都要追求高并发、高可用的,根据系统的用户量、峰值流量和团队本身的技术与运维能力来考虑如何部署这些设施才是合理的做法,在能满足需求的前提下,最简单的系统就是最好的系统。

标签:单点,系统,多级,部件,分流,架构,凤凰
From: https://www.cnblogs.com/suBlog/p/16853285.html

相关文章

  • 软考系统架构师倒计时第3天
    软考系统架构师倒计时第3天2019年系统架构师考试科目三:论文一1.论负载均衡技术在Web系统中的应用负载均衡技术是提升Web系统性能的重要方法。利用负载均衡技术,可将负载(......
  • 软考系统架构师倒计时第3天
    软考系统架构师倒计时第3天2019年系统架构师考试科目三:论文一1.论负载均衡技术在Web系统中的应用负载均衡技术是提升Web系统性能的重要方法。利用负载均衡技术,可将负载......
  • Nvdia GPU Femi 架构
     GTX480-Compute2.0capability  有15个core或者说SM(StreamingMultiprocessors)  每个SM,一般有32cuda处理器  共480个cuda处理器  带ECC......
  • AMD GPU 硬件架构
     AMD5870显卡(cypress) 架构 20个simd引擎,每个simd引擎包含16个simd 每个simd包含16个streamcore  每个streamcore都是5路的乘法-加法......
  • 【架构】架构设计的目的
    在上一篇架构设计的历史背景一文中,我们聊了架构出现的历史背景和推动因素。以史为鉴,对我们了解架构设计的目的很有帮助。谈到架构设计,相信每个技术人员都是耳熟能详,但如果......
  • kubernetes集群架构
    Master:管理(控制)节点,相当于公司的管理层Master节点主要由APIServer、Controller-Manager和Scheduler三个组件,以及一个用于存储集群状态的Etcd存储服务组成Nod......
  • 架构(domain层详解...)
    架构 理解:1、Repo数据源,Domain把数据源数据转换为界面使用的数据  domain层详解domain的概念,通常会分很多层,比如经典的三层架构,控制层、业务层、数据访问层(DA......
  • 活动预告 | 2022 SACC 中国系统架构师大会
    10月27日下午14:30-15:30,OpenMLDBPMC、第四范式资深体系架构科学家张浩,将在2022SACC中国系统架构师大会中为大家带来议题为《开源机器学习数据库OpenMLDB:线上线下一......
  • 8-01-剖析业务架构与业务重构实践_ev
                灰度上线:一个一个分别上线,例如先上线1占比相对较低           ......
  • mysql双主架构解决自增冲突
    Mysql双主自增长冲突处理 多主互备和主从复制有一些区别,因为多主中都可以对服务器有写权限,所以设计到自增长重复问题 出现的问题(多主自增长ID重复) 1:首先我们通过A......