牛骨文教育服务平台(让学习变的简单)
博文笔记

mysql、nginx、php-fpm、php配置优化

创建时间:2017-05-25 投稿人: 浏览次数:473

这里只列出了少数参数,根据工作中实际使用到的和结果,间断更新。

zlib.output_compression=On;
zlib.output_compression_level=3;
zlib.output_handler=;
  1. 开启zlib压缩,开启后,php会将返回的数据压缩返回,并且返回头中的Content-Encoding值会变成gzip。
  2. 压缩级别,一般设置在1-5之间,值越大压缩比越高,一般设置个居中值就可以了,因为压缩效率是成反比的,设置一个很大的值,也许花费了很大的性能只压缩了很小的内容。
  3. 根据文档所述,如果开启压缩,这个项目必须开启,不需要设置值,否则可能会产生错误。
max-children = 150;
  1. 一个子线程大约消耗20M内存,根据自己系统的实际内存来设置即可,最好不好直接设置最大值,占用大约70%-80%内存即可。
worker_processes 2;
worker_rlimit_nofile 65535;
error_log xxxxx.log crit;

全局配置模块

  1. 工作进程数,设置与CPU内核数量一致即可。
  2. 最大文件操作符数量,linux中与ulimit -n 数量一致即可,默认最大值为65535,若需更大的数目,只需要用这条命令设置即可。
  3. 输出错误级别,c’rit级别才输入至log。
worker_connections 65535;
use epoll;
multi_accept on;

event配置模块

  1. 最大线程处理连接数,我这里设置的与操作符一致。
  2. 允许单个线程处理多个任务,这里的值会根据系统不同有所不同,我这里系统为centos因此使用这个值。
  3. 允许尽可能的处理链接,如果最大线程处理连接数过低,会产生大量无效请求。
sendfile on;
tcp_nopush on;
tcp_nodelay on;

http配置模块

  1. 使用内核传输,比普通操作效率更高。
  2. 服务器在 sendfile 时可以提前准备 HTTP 首部,能够达到优化吞吐的效果。
  3. 不要缓存 data-sends (关闭 Nagle 算法),这个能够提高高频发送小数据报文的实时性。

开启opcache扩展,yum安装的情况下,直接yum install php-opcache即可,指定源等操作可以查看我的配置服务器文章。

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。