大型互联网项目特点&集群和分布式&架构演进
大型互联网项目特点&集群和分布式&架构演进
1.大型互联网项目的相关介绍
-
项目特点:
- 用户多
- 流量大,并发高
- 海量数据
- 易受攻击
- 功能繁琐
- 变更快
-
架构目标
- 高性能:提供快速的访问体验。
- 高可用:网站服务一直可以正常访问。
- 可伸缩:通过硬件增加/减少,提高/降低处理能力。
- 高可扩展:系统间耦合低,方便的通过新增/移除方式,增加/减
- 少新的功能/模块。
- 安全性:提供网站安全访问和数据加密,安全存储等策略。
- 敏捷性:随需应变,快速响应。
-
性能指标
- 响应时间(RT):请求到拿到响应结果的时间
- 并发查询次数(QPS):每秒处理的请求次数
- 吞吐量(TPS): 每秒处理的事务请求次数
注 : QPS >= 并发连接数 >= TPS
2.集群和分布式
- 集群:很多“人”一起 ,干一样的事。
- 一个业务模块,部署在多台服务器上。
- 分布式:很多“人”一起,干不一样的事。这些不一样的事,合起来是一件大事。
- 一个大的业务系统,拆分为小的业务模块,分别部署在不同的机器上。
3.架构演进
- 演进过程
- 单体架构
- 垂直架构
- 分布式架构
- SOA架构
- 微服务架构
- Dubbo 是 SOA时代的产物,SpringCloud 是微服务时代的产物