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


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

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

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    扑克牌顺子
    数组转 二叉树 ,并且输出二叉树的右视图
    数组中逆序对(归并排序思想)
    链表数字加和
    回文数字
    数组中 只出现一次的数
    判断是否有从根节点到叶子节点的节点值之和等于 sum
    双指针求 3个数和 为0的 数
    vue项目将css,js全部打包到html文件配置
    webpack4配置优化
  • 原文地址:https://www.cnblogs.com/klbc/p/9809694.html
Copyright © 2020-2023  润新知