• 中型网站的架构思路(可承载亿级pv)


    后端架构

    本次架构中须使用负载均衡,但是在配置负载均衡服务器的时候考虑到,担任负载均衡的服务器可能崩溃,故应在配置多台负载均衡服务器的同时,采用一个高可用的服务器的keeplived让负载均衡服务器崩溃时及时启用其他同等职责服务器.

    负载均衡用来对web集群进行均衡分配,减少服务器的压力,同时web集群内服务器要通过redis或者memcache来共享session

    数据库使用分布式布置,采用读写分离,建立主数据库来执行写操作,从数据库来执行读操作,还可以专门建立运算统计数据库,将多种操作分开,降低数据压力,提高执行速度.多个数据库通过binlog来同步.

    建立分布式缓存机制,要进行反向代理缓存、nginx缓存、gzip压缩、页面静态化缓存、模板引擎缓存、数据库字段缓存以及PHP的opcache缓存(减少PHPzend引擎执行)

    对于静态资源采用动静分离,将静态资源与存在专门的服务器上,仅需配置nginx就可,同时还可以使用cdn加速,将访问量在一定标准的静态资源筛选出来,将链接交于cdn服务商,存在cdn边缘节点上,提高静态资源访问速度。同时为防止cdn边缘节点崩溃,cdn服务商会有多级缓存,最次还可以使用自己存储队列。

    一个大体的流程为:高可用服务器保障负载均衡服务器,负载均衡服务器对web集群进行均衡分配,减少服务器压力,web集群服务器通过共享session来实现当服务器崩溃时候,用户能够无需再次登录,web集群服务器与分布式缓存相连接,当缓存之中存在需要的数据的时候,无需访问数据库,能提高响应速度。与web集群链接的分布式数据库通过读写分离,分布式布局,降低数据库压力,采用binlog同步数据,主从数据库可随时切换。静态资源采用动静分离原则布置,同时可使用cdn加速,将访问量高的静态资源交由cdn服务商,通过cdn边缘节点来访问。同时cdn服务商有自己的多级缓存可以保障边缘节点崩溃时,不影响访问。最差还可以继续访问自己的存储队列。

     

    该架构可以承载中型网站的访问量,最高可以承载亿次pv。

     

     

  • 相关阅读:
    初学Java——数组
    Ubuntu下将软件添加到快捷启动栏的问题
    初学Java——方法
    初学Java——选择
    初学Java——常用类之Math笔记
    初学Java——基本程序设计笔记(2)
    初学Java——基本程序设计笔记(1)
    关于IE浏览器里修改元素style属性的问题
    2.22,2.24工作进度
    2.21工作进度
  • 原文地址:https://www.cnblogs.com/phplk/p/7219768.html
Copyright © 2020-2023  润新知