栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > 架构设计

系统设计:如何让系统容易扩展?

架构设计 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

系统设计:如何让系统容易扩展?

系统设计:如何让系统容易扩展?

一个高可扩展性指标,表示可以通过增加机器的方式来线性提高系统的处理能力,从而承担更高的流量或者并发数。

在单机系统中通过增加处理核心数来增加系统的并行处理能力,但是这个方法并不总生效,随着并行的任务增多,系统会因为争夺资源而达到性能上的拐点。系统性能会不升反降。

多台机器组成的机器系统也类似,在集群系统中,不同的分层也存在一些瓶颈。制约横向扩展能力。

举个例子,系统的流量是每秒1000次请求,对数据库请求也是 1000次/s ,单独如果流量增加10倍,系统可以扩容,正常提供服务,但是数据库就成了瓶颈。

再个例子,单机网络的带宽是50Mbps ,如果扩容到 30台机器,前端负载均衡带宽超过了1000Mbps 限制,那么也会成为瓶颈。

无状态的服务和组件更容易扩展,但是数据库这样的存储服务是有状态的,不易扩展。

数据库,缓存,依赖的第三方,负载均衡,交换机带宽,都是系统扩展性的一些因素。

系统扩展性设计思路

拆分是系统扩展性的最重要的思路,把庞大的系统进行拆分,有单一职责的模块,将复杂的问题简单化。

存储层扩展
  1. 按照业务拆分
    存储层扩展首先考虑的维度是业务维度。
    比如说有个社区系统,开始只有一个库,拆分之后,分成 用户库,关系库,内容库,评论库,点赞库等。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/911452.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号