php - 如何设置php-fpm多线程工作?

标签 php linux fpm

php-fpm配置:

  pm = dynamic 
  pm.max_children = 50 
  pm.start_servers = 20 
  pm.min_spare_servers = 10

这是 nginx 配置:

    root /var/www/html;
    index index.html index.htm index.nginx-debian.html;
    server_name _;
    location / {
            try_files $uri $uri/ =404;
    }
    location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/run/php/php7.0-fpm.sock;
    }

但是当我同时发送50个请求时,它是一个一个执行的。

enter image description here

enter image description here

最佳答案

这可能是由于 session 造成的。

默认情况下,php 将 session 存储在文件中,并在请求期间阻止此文件,因此只有在上一个请求完成后才能启动下一个请求。

尝试将 session 存储在内存缓存或数据库中。

关于php - 如何设置php-fpm多线程工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56802878/

相关文章:

php - MongoDB PHP 驱动程序未在 fpm 中加载 - 但在 cli 中加载

php - 无法重新启动 php-fpm.service : Unit php-fpm. 找不到服务

linux - 是否有用于访问 Docker 19.03 中的 docker buildx 的 HTTP api?

android读取短信收件箱消息

php - 为什么 php-fpm 会忽略为补充组定义的权限?

php - Laravel Schema 设计多对多

php - 如何更新jquery中的两个输入框

php - 如何使用 codeigniter 中的查询生成器类来缩短此查询

PHP API 身份验证和 session

linux - 对于初学者 Yokto 项目或 OpenEmbedded 构建自己的嵌入式发行版哪个更好?