第二章 大型网站架构模式

翻译 2016年08月28日 19:17:27

第二章 大型网站架构模式

  1. 网站架构模式
    • 分层
      • 横向维度切分:应用层、服务层、数据层
      • 单一职责,上下层依赖调用,分层约束(禁止跨层和逆向调用)
    • 分割
      • 纵向维度切分:根据业务模块划分
      • 高内聚,低耦合
    • 分布式
      • 分布式应用和服务(复用服务)
      • 分布式静态资源(动静分离,如JS, CSS, Logo图片等资源)
      • 分布式数据和存储(传统关系数据库和NoSQL产品)
      • 分布式计算(移动计算而不是移动数据,如Hadoop及其MapReduce)
      • 分布式配置(网站线上服务器配置实时更新)
      • 分布式锁(分布式环境下实现并发和协同)
      • 分布式文件(基于云存储)
    • 集群
      • 多台服务器部署相同应用构成集群(至少两台,提高可用性)
      • 负载均衡设备共同对外提供服务
    • 缓存
      • CDN(内容分发网络)
        • 网络服务商处
        • 缓存静态资源和较少变化且访问量大的数据
        • 未经过应用服务器
      • 反向代理
        • 网站前端架构的一部分
        • 缓存静态资源
        • 未经过应用服务器
      • 本地缓存
        • 应用服务器本地
        • 缓存热点数据
        • 应用服务器直接访问
      • 分布式缓存
        • 分布式缓存集群中
        • 缓存量大
        • 应用服务器通过网络通信访问
      • 缓存的两个前提条件
        • 数据访问热点不均衡
        • 数据具有一定的时效性
      • 缓存的好处
        • 加快数据访问速度
        • 减轻后端应用和数据存储的负载压力
    • 异步
      • 单一服务器内部多线程共享内存队列
      • 分布式系统中多个服务器集群使用分布式消息队列(内存队列的分布式部署)
      • 典型的生产者消费者模式
      • 好处
        • 提高系统可用性
        • 加快网站响应速度
        • 消除并发访问高峰
      • 注意
        • 可能对用户体验、业务流程造成影响
    • 冗余
      • 数据库冷备份
      • 数据库热备份(主从分离同步)
      • 灾备数据中心
    • 自动化
      • 发布过程自动化
        • 自动化代码管理(版本控制、分支创建合并)
        • 自动化测试(测试、报告、反馈)
        • 自动化安全检测(静态代码、运行攻击)
        • 自动化部署
      • 自动化监控
        • 自动化报警(关键数据指标异常)
        • 自动化失效转移(隔离失效服务器)
        • 自动化失效恢复(重启失效服务器并同步数据保证数据一致性)
        • 自动化降级(拒绝部分请求、关闭不重要的服务)
        • 自动化分配资源(空闲资源分配)
    • 安全
      • 密码和手机校验码(身份认证)
      • 加密(敏感数据)
      • 验证码(机器人程序)
      • 过滤(垃圾信息、敏感信息)
      • 风险控制(重要操作)

大型网站技术架构(二)--架构模式

大型网站技术架构(一)--大型网站架构演化          每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作。   ...
  • MINEZHANGHAO
  • MINEZHANGHAO
  • 2014年05月25日 09:41
  • 6610

大型网站架构模式

网站架构模式 关于什么是模式,这个来自建筑学的词汇是这样定义的:“每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作”。模式的...
  • joeyon
  • joeyon
  • 2014年11月13日 09:21
  • 388

《软件架构模式》-第二章事件驱动架构(下)

经纪人拓扑结构(Broker Topology)经纪人拓扑结构和调度员拓扑结构不同点在于,没有中央事件调度员,而是:消息执行流程沿着类似链条连接的各个事件处理模块,通过轻量级的消息经纪人(比如Acit...
  • gBbQRglVIr3dYi82
  • gBbQRglVIr3dYi82
  • 2017年11月23日 00:00
  • 58

大型网站技术架构:核心原理与案例分析—第二章:大型网站架构模式

HTML静态化、图片服务器分离、数据库集群和库表散列、缓存、镜像、负载均衡  大型网站,比如门户网站。在面对大量用户访问、高并发请求方面,基本的解决方案集中在这样几个环节:使用高性能的服务器、高性...
  • nuli888
  • nuli888
  • 2016年08月02日 11:26
  • 395

《大型网站技术架构》笔记:大型网站架构模式

什么是模式 “模式”一词来源于建筑学,定义如下:“每一个模式,描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次的使用该方案而不必做重复的工作”。模式的关键在于...
  • jund05
  • jund05
  • 2017年01月13日 22:10
  • 182

[16-1-02]大型网站架构模式

第一章:第2部分 大型网站架构模式 1.分层 1.1分层在计算机世界无处不在,网络的7层通信协议是一种分层结构 1.2计算机硬件,操作系统,应用软件也可以看作一种分层结构 1.3大型网...
  • a102615350
  • a102615350
  • 2017年12月22日 10:52
  • 131

2 大型网站架构模式

2 大型网站架构模式 2.1 网站架构模式 2.1.1 分层 在大型网站架构中也采用分层结构,将网站软件系统分为应用层、服务层、数据层。 表2.1网站分层架构 应用层 ...
  • u010819416
  • u010819416
  • 2016年06月22日 21:39
  • 108

大型网站技术架构(二)——架构模式

大型网站技术架构(二)——架构模式 每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作。            所谓网...
  • huangshulang1234
  • huangshulang1234
  • 2017年12月02日 09:38
  • 95

说说大型网站的架构模式

在建筑领域是这样描述模式的:每一个模式描述了一个在我们周围不断重复发生的问题以及该问题的解决方案核心。我们可以一次又一次地使用这个方案而不必做重复的工作。模式的关键是可重复性,问题和场景的可重复性带来...
  • deniro_li
  • deniro_li
  • 2017年09月20日 15:05
  • 244

9. 大型网站架构模式

2.1 网站架构模式 2.2 架构模式在新浪微博的应用 http://timyang.net/architecture/weibo/ ...
  • enlyhua
  • enlyhua
  • 2016年11月04日 22:53
  • 175
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第二章 大型网站架构模式
举报原因:
原因补充:

(最多只允许输入30个字)