《大型 站技术架构:核心原理与案例分析》

  • 大型 站架构演化
    • 大型 站软件系统的特点
    • 大 站架构演化发展历程
      • 初始阶段的 站架构
      • 应用服务和数据服务分离
      • 使用缓存改善 站性能
      • 使用应用服务器集群改善 站的并发处理能力
      • 数据库读写分离
      • 使用反向代理和CDN加速 站响应
      • 使用分布式文件系统和分布式数据库系统
      • 使用NoSQL和搜索引擎
      • 业务拆分
      • 分布式服务
    • 大型 站架构演化的价值观
    • 站架构设计误区
  • 大型 站架构模式
    • 站架构模式
      • 分层
      • 分割
      • 分布式
      • 集群
      • 缓存
      • 异步
      • 冗余
      • 自动化
      • 安全
    • 架构模式在新浪微博的应用
    • 小结
  • 大型 站核心架构要素
    • 性能
    • 可用性
    • 伸缩性
    • 扩展性
    • 安全性
    • 小结
  • 瞬时响应 站的高性能架构
    • 站性能测试
      • 不同视角下的 站性能
        • 用户视角的 站性能
        • 开发人员视角的 站性能
      • 性能测试指标
        • 响应时间
        • 并发数
        • 吞吐量
        • 性能计数器
      • 性能测试方法
      • 性能测试 告
      • 性能优化策略
        • 性能分析
        • 性能优化
    • Web前端性能优化
      • 浏览器访问优化
        • 减少http请求
        • 使用浏览器缓存
        • 启用压缩
        • CSS放在页面最上面JavaScript放在页面最下面
        • 减少Cookie传输
      • CDN加速
      • 反向代理
    • 应用服务器性能优化
      • 分布式缓存
        • 缓存的基本原理
        • 合理使用缓存
          • 频繁修改的数据
          • 没有热点的访问
          • 数据不一致与脏读
          • 缓存可用性
          • 缓存预热
          • 缓存穿透
        • 分布式缓存架构
        • Memcached
          • 简单的通信洗衣
          • 丰富的客户端程序
          • 高性能的 络通信
          • 高效的内存管理
          • 互不通信的服务器集群架构
      • 异步操作
      • 使用集群
      • 代码优化
        • 多线程
        • 资源复用
        • 数据结构
        • 垃圾回收
    • 存储性能优化
      • 机械硬盘 VS 固态硬盘
      • B树 VS LSM树
      • RAID VS HDFS
    • 小结

大型 站架构演化

打造一个高可用、高性能、易扩展、可伸缩且安全的 站。

大型 站软件系统的特点

  • 高并发、大流量:需要面对高并发用户,大流量访问。

  • 高可用:系统7×24小时不间断服务。

  • 海量数据:需要存储、管理海量数据,需要使用大量服务器。

  • 用户分布广泛, 络情况复杂:许多大型互联 都是为全球用户提供服务的,用户分布范围广,各地 络情况千差万别。

  • 安全环境恶劣:由于互联 的开放性,使得互联 站更容易受到攻击,大型 站几乎每天都会被黑客攻击。

  • 需求快速变更,发布频繁:和传统软件的版本发布频率不同,互联 产品为快速适应市场,满足用户需求,其产品发布频率是极高的。

  • 渐进式发展:与传统软件产业或企业应用系统一开始就规划好全部的功能和非功能需求不同,几乎所有的大型互联 站都是从一个小 站开始,渐进地发展起来的。

大 站架构演化发展历程

1. 初始阶段的 站架构

  • 应用服务器:需要处理大量的业务逻辑,因此需要更快更强大的CPU

  • 数据库服务器:需要快速磁盘检索和数据缓存,因此需要更快的硬盘和更大的内存

  • 文件服务器:需要存储大量用户上传的文件,因此需要更大的硬盘

3. 使用缓存改善 站性能

负载均衡调度服务器:将来自用户浏览器的访问请求分发到应用服务器集群中的任何一台服务器上。

5. 数据库读写分离

数据库读写分离

主从热备功能:通过配置两台数据库主从关系,可以将一台数据库服务器的数据更新同步到另一台服务器上。

应用服务器在写数据库的时候,访问主数据库,主数据库通过主从复制机制将数据更新同步到从数据库,这样当应用服务器读数据的时候,就可以通过从数据库获得数据。为了便于应用程序访问读写分离后的数据库,通常在应用服务器端使用专门的数据访问模块,使数据库读写分离对应用透明。

6. 使用

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年5月10日
下一篇 2018年5月10日

相关推荐