美文网首页
004 复杂度来源:高性能

004 复杂度来源:高性能

作者: 猿笔记 | 来源:发表于2019-01-21 03:02 被阅读22次

复杂度的体现

    • 单台计算机内部为了高性能带来的复杂度
    • 多台计算机集群为了高性能带来的复杂度

单机复杂度

  • 计算机内部复杂度最关键的地方:操作系统
  • 操作系统和性能最相关的是:进程线程
  • 分时调度,本质上仍然是串行任务
  • 多cpu才能做到真正的同时执行计算任务
  • 常见解决方案:SMP(对称多处理器结构)、NUMA(非一致存储访问结构)、MPP(海量并行处理结构)

集群复杂度

  • 任务分配【横向扩展】
    • 任务分配:指的是每台机器都可以处理完整的业务任务,不同的任务分配到不同的机器上执行

      需考虑的因素:
      (1)任务分配器的选择:硬件网络设备(如:F5、交换机等)、软件网络设备(如:LVS),或负载均衡软件(如:Nginx)、自己开发的系统
      ---需考虑:性能、成本、可维护性、可用性等
      (2)选择合适的连接方式,并对连接进行管理
      (3)分配算法,如:轮询算法、权重分配算法、按负载分配等
      =》若业务进一步发展,任务分配器本身会成为性能瓶颈

      需考虑的因素:
      (1)将不同的用户分配到不同的任务分配器;如:DNS轮询、智能DNS、CDN、GSLB设备等
      (2)任务分配器和业务服务器的连接变成了网状结构
      (3)状态管理、故障处理复杂度大大增加
  • 任务分解【隔离局部瓶颈 把握拆分粒度】

    能提升性能的原因:
    (1)简单的系统更容易做到高性能
    (2)可以针对单个任务进行扩展
    =》并不是系统拆分的越细越好,因为系统间的调用次数会呈指数级别上升

相关文章

  • 004 复杂度来源:高性能

    复杂度的体现 单台计算机内部为了高性能带来的复杂度 多台计算机集群为了高性能带来的复杂度 单机复杂度 计算机内部复...

  • 复杂度来源:高性能

    笔记 软件系统中高性能带来的复杂度主要体现在两方面,一方面是单台计算机内部为了高性能带来的复杂度;另一方面是多台计...

  • 从零开始学架构

    第一章 架构基础 1.架构设计的复杂度来源 1.1 高性能 1.1.1单机复杂度 1.1.2集群复杂度 集群复杂度...

  • 04 | 复杂度来源:高性能

    周四,我为你讲了架构设计的主要目的是为了解决软件系统复杂度带来的问题。那么从今天开始,我将为你深入分析复杂度的 6...

  • 07 | 复杂度来源:低成本、安全、规模

    关于复杂度来源,前面的专栏已经讲了高性能、高可用和可扩展性,今天我来聊聊复杂度另外三个来源低成本、安全和规模。 低...

  • 学习笔记:系统架构复杂度的来源

    架构设计的主要目的是为了解决软件系统复杂度带来的问题 1 复杂度来源:高性能性能是软件的一个重要质量属性。衡量软件...

  • 架构总结04--复杂度来源:高性能

    软件系统中高性能带来的复杂度主要体现在两方面,一方面是单台计算机内部为了高性能带来的复杂度;另一方面是多台计算机集...

  • 04 复杂度来源:高性能(读书笔记)

    高性能带来的复杂度之单机复杂度 单机为了实现高性能,引入了进程,但是还要考虑多进程、多线程、进程间通信、多线程并发...

  • 从0开始学架构 - 复杂度来源:高性能

    对性能孜孜不倦的追求是整个人类技术不断发展的根本驱动力。 软件系统中高性能带来的复杂度主要体现在两方面: 一方面是...

  • 架构的复杂度

    架构复杂度来自:高可用,高性能,可扩展性,安全,低成本等要求

网友评论

      本文标题:004 复杂度来源:高性能

      本文链接:https://www.haomeiwen.com/subject/bblqjqtx.html