系统架构

用户头像
eazonshaw
关注
发布于: 2020 年 07 月 01 日
系统架构

概述

互联网系统面临怎样的挑战?目前针对互联网的架构,有三高,高并发高可用高性能。其中,高并发不同于另外两个词,高并发是因,指的是用户量大的场景,而高可用和高性能是果,指在应对高并发的场景下系统需要满足的条件。

互联网系统面临的挑战有:高并发、大流量;高可用;海量数据;用户分布广泛,网络情况复杂;安全环境恶劣;需求快速变更,发布频繁;渐进式发展(互联网系统基本是通过运营慢慢发展起来的)。

应对高并发挑战的两个技术方向为:垂直伸缩和水平伸缩。其中,通过升级硬件和网络吞吐能力可以实现垂直伸缩,通过增加服务器提升计算能力可以实现水平伸缩。对比垂直伸缩和水平伸缩的优劣:垂直伸缩是最简单的短期伸缩方案,但缺点是费用高,有物理极限;水平伸缩是伸缩的圣杯,成本可控,且不会有极限。

互联网系统的演化

  • 第一阶段:应用数据分离

  • 第二阶段:使用缓存改善性能

  • 第三阶段:使用集群改善并发处理能力

  • 第四阶段:数据库读写分离

  • 第五阶段:使用反向代理和CDN加速网站响应

  • 第六阶段:使用分布式文件系统和分布式数据库

  • 第七阶段:使用NoSQL和搜索引擎

  • 第八阶段:业务拆分

  • 第九阶段:微服务和中台化

架构模式

架构模式描述了不断重复发生的问题以及问题解决方案的核心。模式的关键在于可重复性,问题与场景的可重复性带来解决方案的可重复使用。

互联网架构模式分为:分层(将软件在横向进行切分),分割(将软件在纵向进行切分),分布式(多台服务器),集群(将分布式服务统一管理),缓存(加速),异步(解耦),冗余(服务器冗余,数据备份冗余等),自动化(运维自动化),安全。

互联网系统的核心要素

如何衡量一个系统的架构设计?

可以从以下方面进行衡量:高性能,高可用,可伸缩,可扩展,安全。

用户头像

eazonshaw

关注

还未添加个人签名 2019.04.10 加入

还未添加个人简介

评论

发布
暂无评论
系统架构