互联网架构概述
文章目录
- 互联网架构概述
- 一、互联网架构特点
- 二、衡量网站性能的指标
- 三、互联网架构目标
- 四、集群和分布式
- 五、互联网架构演变
- 1. 单体架构
- 2. 垂直架构
- 3. 分布式架构
- 4. SOA架构
- 5. 微服务架构
一、互联网架构特点
- 用户多
- 流量大,高并发
- 海量数据
- 易受攻击
- 功能繁琐
- 变更快
二、衡量网站性能的指标
- 响应时间:发送一个请求到收到响应数据所花费的时间
- 并发数:系统同时能处理的请求数量
- 并发连接数:每秒钟服务器的总TCP连接数量
- 请求数:每秒钟的请求数量
- 并发用户数:单位时间内的用户数量
- 吞吐量:单位时间内系统能处理的请求数量
三、互联网架构目标
- 高性能:提供快速的访问体验
- 高可用:网站服务一直可以正常访问
- 可伸缩:通过增加硬件的数量,提高处理能力
- 高可扩展:系统间耦合度低,方便的增加、移除功能模块
- 安全性:提供安全的网站访问和数据加密
- 敏捷性:随需应变,快速响应
四、集群和分布式
- 集群:多台机器一起做同样的事,即多台服务器的业务模块都相同
- 分布式:多台机器一起做不同的事,即一个大的业务系统,拆分成多个小的业务模块部署在不同 的服务器上
五、互联网架构演变
1. 单体架构
多个业务模块部署在一台服务器上;功能单一,难以扩展
2. 垂直架构
将单体架构中的多个模块分为多个独立的项目,形成多个单体架构;由于独立,导致每个单体 架构中都需要的相同模块每个单体架构中都需要实现一次,造成重复功能太多
3. 分布式架构
在垂直架构的基础上,将公共的业务模块抽取出来,作为独立的服务供其他调用者共享;底层 通过RPC (远程过程调用)实现
存在的问题:服务提供方一旦产生变更,所有的使用方(消费方)都需要随之变更,比如提供方 服务器的ip地址产生变化,消费方调用的ip地址也要随之变更
4. SOA架构
使用ESB (企业服务总线)作为消费方和提供方的服务中介;消费方不再和提供方直接交互,通 过总线转发请求,消费方无需知道提供方发生的变化,只需要向总线发出与消费方交互的请求, 由总线找到消费方
5. 微服务架构
基于SOA架构,但更注重对业务的组件化,将原有的业务拆分成多个可以独立开发、运行的小 模块,这些小模块之间进行交互和集成
Dubbo是SOA时代的产物,SpringCloud是微服务时代的产物