欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP Web System Optimization(undone)

程序员文章站 2022-05-04 08:10:51
...

目录 0 . 引言 1 . PHP Pool 2 . listen 3 . Process Manage(PM) 4 . pm.max_children 5 . PHP DB Connection Pool(数据库连接池) 0. 引言 0x1: WEB系统的性能优化需要考虑哪些方面 对于一个WEB系统来说,从client发起请求,到服务器端处理,最后到返回到cli

目录

0. 引言
1. PHP Pool
2. listen
3. Process Manage(PM)
4. pm.max_children
5. PHP DB Connection Pool(数据库连接池)

0. 引言

0x1: WEB系统的性能优化需要考虑哪些方面

对于一个WEB系统来说,从client发起请求,到服务器端处理,最后到返回到client显示结果,在大多数情况下这是一个较长的链路,其中的每一个环节都存在可以优化性能的热点,例如

1. 将多台web server配置成集群模式,在集群的前端(逻辑)部署Load Balance Server,将客户端的访问请求"平均地"负载到集群的子节点server中
2. 在Load Balance Server和集群之间部署Cache Server,例如对于典型的DB驱动型的应用,使用Redis代替直接Mysql连接就是一个很好的实践
    1) 对于insert操作,在向mysql插入的同时,向redis中也保存一份
    2) 对于select操作,优先从redis中查询,如果命中失败,再从mysql中查询
3. 集群中的web server采用nginx+php-fpm的组合,nginx在高并发情况下的表现比apache要更好
4. 针对web server上的业务代码进行逻辑优化
5. 将单点的DB,例如mysql,改为读写分离的主从集群架构 
6. 使用DB Connection Pool(数据库连接池)代替每次请求都重新创建并销毁DB连接的操作

0x2: PHP解析工作方式

PHP Web System Optimization(undone)微信