PHP高并发高负载系统架构
一、高并发和高负载的约束条件 硬件 部署 操作系统 Web 服务器 PHP MySQL 测试 二、解决之道—— 硬件篇 处理能力的提升:部署多颗CPU,选择多核心、具备更高运算频率、更大高速缓存的CPU; 处理能力的提升最直接的反应在于Web请求的处理效率和PHP程序的执行效率。 内存带宽与容量:更大的内存带宽和容量; 内存带宽与容量的提升最直接的反应在于应对数据库大量的数据交换。 磁盘搜索与I/O能力:选择更高的转速、更大的硬盘缓存、组件磁盘阵列(RAID); 磁盘搜索与I/O能力的提升最直接反应在于数据库大量的查询和读写以及文件的读写。 网络带宽的提升可考虑的因素包括: 更大带宽、多线路接入、独享带宽; 服务器在大负载的情况下,对网络带宽的占用是十分可观的。 策略:硬件设施是应对大负载的基础,硬件设施的投入可根据实际压力和预算量力而行。 三、解决之道—— 部署篇 3.1、服务器分离 32、数据库集群和库表散列 3.3、镜像 3.4、负载均衡 分类: 1)、DNS轮循 2)代理服务器负载均衡 3)地址转换网关负载均衡 4)NAT负载均衡 5)反向代理负载均衡 6)混合型负载均衡 策略:根据硬件投入和业务需求,选择合理的部署方案。 部署方案1 : 适用范围:静态内容为主体的网站和应用系统;对系统安全要求较高的网站和应用系统。 Main Server :主服务器