• 【大型网站架构】架构演化


    基本成型的大型网站架构:

    使用分布式服务器(多个应用服务器,使用一个负载均衡调度服务器进行调度),使用分布式缓存服务器,分布式文件服务器,数据库使用读写分离,写入主数据库,读取从数据库,主从数据库之间会进行数据复制:

    (本文的图片是从其他地方偷来的,不是很清晰,但基本能看。)

    用户量多了之后,不同地区用户访问网站时,速度差异较大。故使用反向代理和CDN加速网站响应(二者基本原理都是缓存,区别在于CDN部署在提供商机房):

    当用户量更大,读写更多时,数据库就会出现瓶颈,需要使用分布式数据库服务器(单表数据量异常庞大时使用,常见的数据库拆分手段是业务分库):

    下一步,使用NoSQL和搜索引擎:

    下一步,业务拆分(如大型购物网站会将首页、商铺、订单、卖家、买家等拆分到不同的产品线,分归不同的业务团队负责):

    最后,把一些各个业务拆分模块中的公共部分(如用户管理、商品管理)提取出来单独部署:

    网站技术是为了业务而存在的,不能一味追求时髦的技术,因为可能将网站技术发展引入崎岖小道。

    有时候,出问题的可能不一定是技术架构,有可能是业务架构,比如12306在 2012年年初的故障事件。

    本文是李智慧的《大型网站技术架构》的笔记。

  • 相关阅读:
    转载:一句代码改变Swing难看的字体
    生产者消费者问题c语言实现
    水题~~~~HDU 4788
    html中dom居中的5种方式
    scss中的三角函数
    nuxt基础Ⅱ
    nuxt基础Ⅰ
    win10软件安装出现错误代码2503/2502
    npm淘宝镜像安装
    axios的使用
  • 原文地址:https://www.cnblogs.com/klbc/p/9809694.html
Copyright © 2020-2023  润新知