大型互联网项目特点&集群和分布式&架构演进

大型互联网项目特点&集群和分布式&架构演进

1.大型互联网项目的相关介绍

  • 项目特点:

    • 用户多
    • 流量大,并发高
    • 海量数据
    • 易受攻击
    • 功能繁琐
    • 变更快
  • 架构目标

    • 高性能:提供快速的访问体验。
    • 高可用:网站服务一直可以正常访问。
    • 可伸缩:通过硬件增加/减少,提高/降低处理能力。
    • 高可扩展:系统间耦合低,方便的通过新增/移除方式,增加/减
    • 少新的功能/模块。
    • 安全性:提供网站安全访问和数据加密,安全存储等策略。
    • 敏捷性:随需应变,快速响应。
  • 性能指标

    • 响应时间(RT):请求到拿到响应结果的时间
    • 并发查询次数(QPS):每秒处理的请求次数
    • 吞吐量(TPS): 每秒处理的事务请求次数

    注 : QPS >= 并发连接数 >= TPS

2.集群和分布式

  • 集群:很多“人”一起 ,干一样的事。
    • 一个业务模块,部署在多台服务器上。
  • 分布式:很多“人”一起,干不一样的事。这些不一样的事,合起来是一件大事。
    • 一个大的业务系统,拆分为小的业务模块,分别部署在不同的机器上。

3.架构演进

  • 演进过程

大型互联网项目特点&集群和分布式&架构演进

  • 单体架构

大型互联网项目特点&集群和分布式&架构演进

  • 垂直架构

大型互联网项目特点&集群和分布式&架构演进

  • 分布式架构

大型互联网项目特点&集群和分布式&架构演进

  • SOA架构

大型互联网项目特点&集群和分布式&架构演进

  • 微服务架构

大型互联网项目特点&集群和分布式&架构演进

  • Dubbo 是 SOA时代的产物,SpringCloud 是微服务时代的产物