大型网站架构基础之笔记

大型网站架构基础之笔记

  1. 架构范式
  • 分层架构
  • 分布式架构
    • 分布式应用与服务
    • 分布式静态资源
    • 分布式数据和存储
    • 分布式计算 Hadoop, MapReduce
  • 业务拆分
  • 集群部署
  • 缓存部署
    • CDN
    • 反向代理
    • 本地缓存
    • 分布式缓存
  • 异步化
  • 资源冗余
  • 自动化

2.架构五要素

  • 性能
    • 网络性能  CDN,带宽
    • 服务器硬件性能  CPU,内存,机械硬盘,SSD
    • 负载均衡  LVS 四层
  • 服务高性能
    • 浏览器端   浏览器缓存,页面压缩, 减少Cookie
    • 应用服务器端  本地缓存, 分布式缓存,异步操作
    • 数据库服务器端  索引,缓存,SQL性能优化
  • 可用性
    • 7X24小时。
    • 资源冗余
    • 宕机时系统可用性
  • 伸缩性
    • 功能拆分,物理分离,实现伸缩
    • 单一功能集群化
  • 扩展性
    • 事件驱动型,消息队列
    • 分布式服务器框架,调用服务方式分离
  • 安全性
    • 保密性
    • 完整性
    • 真实性
    • 占有性

3.性能指标

  • 响应时间
  • 并发数
  • 吞吐量
  • 健康度

4.缓存

  • memcached
  • Redis
  • 适用于低频修改数据
  • 适用于热点访问数据
  • 数据不一致
    • 通过异步线程
    • 通过定时任务解决
    • 通过状态校验解决
  • 缓存可用性
    • 分布式
    • 复制
  • 缓存穿透问题
    • 结果为空的数据也缓存
    • 一定不存在的key用布隆过滤器
  • 分布式缓存

5.CDN缓存

6.负载均衡

  • 七层负载均衡 Nginx
  • 四层负载均衡 LVS F5
  • 反向代理原理
    • 做内部服务器的替身
    • 作为负载均衡
  • 好处
    • 提高内部服务器安全性
    • 提高响应能力
    • 节约IP地址资源

7.分布式数据库

  • mysql
  • 优势
    • 分布式数据管理,调高性能
    • 经济型和灵活性好
    • 可靠性和可用性强
  • 数据切割
    • 纵向切分
    • 横向切分
  • 读写分离
  • 主从同步,数据完整性
    • 基于代码实现
    • 使用中间代里层
    • 中间件
      • Cobar,MyCat,OneProxy,Viteness,KingShard,Atlas,MaxScale

8.存储优化

  • SDD
  • RAID
  • HDFS
    • Hadoop2.0

9.消息队列

  • 同步调用
  • 异步调用
  • 生产者-消费者模式
  • 两种模型:
    • 点对点模型
    • 订阅模型
  • 常用产品
    • RabbitMQ
    • ActiveMQ
    • RocketMQ
    • Kafka

10.分布式服务数据一致性

  • 两阶段提交协议
    • 准备阶段
    • 提交阶段
  • 三阶段提交协议
  • TCC协议
  • 解决方案
    • 查询模式
    • 补偿模式
    • 异步确保模式
    • 定时校对模式

11.分布式日志服务

  • EFK
    • elasticsreaarch
    • filebeat
    • kibana
    • logstash
    • kafka
    •  

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值