39. 横向扩容

横向扩容

目前为止,我们介绍的大部分是单机优化的方案,但毕竟单机能承载的流量有限,应对大规模以及不断增长的流量,最终的方案是实现服务器集群部署,随时做好 系统横向扩容 的准备。

横向扩容(Horizontal Scaling),泛指用更多的节点支撑更大量的请求。在 Laravel 应用中,指的是把应用依赖的软件服务都独立到单独的机器上,并且按照可承受无限成长流量的目标进行配置。以 LaraBBS 为例子,我们主要依赖几个服务:

  • Nginx Web 服务器
  • PHP-FPM 脚本解析服务
  • MySQL 数据库
  • Redis 缓存
  • Redis 队列
  • 计划任务

接下来将单独演示拓扑结构。

PHP-FPM 集群

用户请求通过 Nginx 负载均衡服务器,按照算法将请求平均分配给 PHP-FPM 服务器,这些服务器可以随时增加数量以应对突增的流量:

横向扩容

MySQL 读写分离

这里我们做了数据库主从读写分离...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0

暂无话题~