我们正在开发一个使用Drupal 7的应用程序(NginX + PHP-FPM)。但在性能测试期间,我们发现Applications Server消耗的CPU非常高。平均CPU消耗在90%的范围内(PHP-FPM消耗最大处理器)。内存消耗非常低。
我们尝试过各种Concurrent Users加载,如25-50-100。但即使有这个用户负载,我们观察到CPU消耗约为90%,因为响应时间非常长。
我们正在使用4核心CPU和RHEL(AWS EC2)操作系统。 应用程序流程是反向代理(Nginx) - > Application Server(Drupal 7 + NginX + PHP-FPM)
以下是我所做的配置更改 -
nginx.conf: -
Traceback (most recent call last):
File "C:\Users\Dilshad\Desktop\project_7-8-2015\8_bands\Program_camera - test.py", line 68, in <module>
min_score = min(difference) # closest reference image
TypeError: unorderable types: list() < int()
virtual.conf: -
user nginx;
worker_processes 4;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
worker_rlimit_nofile 20480;
events {
use epoll;
worker_connections 10240;
multi_accept on;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
server_tokens off;
keepalive_timeout 65;
gzip on;
...
}
PHP-fpm.conf: -
location ~ '\.php$|^/update.php' {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 16k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
include fastcgi_params;
}
PHP-FPM / www.conf: -
emergency_restart_threshold = 10
emergency_restart_interval = 1m
process_control_timeout = 15s
daemonize = no
有人可以指导我们如何解决此问题吗?
答案 0 :(得分:1)
您可以执行以下操作来提高生产安装的性能。
如果您在drupal上进行了任何自定义开发,您可能需要检查代码以确保其不会花费大量时间来执行数据库查询等操作。分析可以帮助识别这些问题。
根据您可以利用缓存的程度,您应该能够在您的实例上获得更多用户。