【PHP】php.ini如何配置,才是PHP性能最大优化?

小破孩
2023-03-23 / 0 评论 / 215 阅读 / 正在检测是否收录...

内存
默认设置

memory_limit = 128M

单个进程可使用的内存最大值,这个值的设定可以从以下几点考虑:

  • 应用的类型。如果是内存集中型应用,可增加该值;
  • 单个 PHP 进程平均消耗的内存,该值可通过多次运行同一个脚本来计算平均值;
  • 能负担多少个 php-fpm 进程;该值等于分配的总内存除以单个 PHP 进程平均消耗的内存

文件上传
默认设置

file_uploads = On
max_file_uploads = 20
upload_max_filesize = 2M
max_execution_time = 30 值 为 0 代表没有限制
  • 设置max_file_uploads来决定同时允许多少个文件上传;
  • 设置upload_max_filesize来决定每个文件上传的最大值;
  • 如果是长时间任务,尽量使用队列来处理,因此,可适当缩短max_execution_time的值;
    注意, Web 服务器也可以设置文件上传大小及超时时间,不能仅仅以 php.ini 的设置为准;

会话
PHP 的会话默认是保存在硬盘中

session.save_handler = files

在实际应用中,应当将会话保存在内存中。可使用 Memcached 或者 Redis。这样做主要有两个好处:

  • 提高速度;
  • 有助于后期的扩展,如果会话数据存储在硬盘中,不便于增加额外的服务器,如果把会话数据存放在 Memcached 或 Redis 里,任何一台分布式 PHP-FPM 服务器都能访问会话数据。

可通过 PECL 安装memcached扩展并设置默认的save_handler为memcached

session.save_handler = 'memcached'
session.save_path = '127.0.0.1:11211'

缓冲输出
默认值

realpath_cache_size = 4M
realpath_cache_ttl = 120

PHP 会缓存应用使用的文件路径,这样每次包含或导入文件时就无需不断搜索包含路径了,这个缓存叫真实路径缓存(realpath cache),如果运行的是大型的 PHP 文件(如 Composer 组件),使用了大量文件,增加 PHP 真实路径缓存的大小能得到更好的性能。

0

评论 (0)

取消