Nginx e PHP O FPM é lento

2

Meu servidor tem 512 MB de memória. configuração nginx.conf é

user www-data;
worker_processes 2;
pid /var/run/nginx.pid;

events {
    worker_connections 768;
    # multi_accept on;
}

http {

##
# Basic Settings
##

sendfile on;
#tcp_nopush on;
#tcp_nodelay on;
keepalive_timeout 3;
types_hash_max_size 2048;
# server_tokens off;

# server_names_hash_bucket_size 64;
# server_name_in_redirect off;

include /etc/nginx/mime.types;
default_type application/octet-stream;

##
# Logging Settings
##

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

##
# Gzip Settings
##

gzip on;
gzip_disable "msie6";

# gzip_vary on;
# gzip_proxied any;
# gzip_comp_level 6;
# gzip_buffers 16 8k;
# gzip_http_version 1.1;
# gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

##
# Virtual Host Configs
##
upstream php {
    server 127.0.0.1:9000;
}


open_file_cache max=5000 inactive=20s;
open_file_cache_valid    30s;
open_file_cache_min_uses 2;
open_file_cache_errors   on;

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}

minha configuração do php fpm é

user = www-data
group = www-data
pm = dynamic

pm.max_children = 50

pm.start_servers = 25

pm.min_spare_servers = 8

pm.max_spare_servers = 40

Estou usando um site wordpress. Mas é muito lento. Eu tenho outro servidor de 512 MB para o escritório. Está usando o apache e é mais rápido que o nginx + phpfpm. Há algo errado na minha configuração?

Uso de memória

Principaisresultados

    
por saturngod 26.07.2011 / 09:29

3 respostas

2

Não inicie tantos servidores php inicialmente, talvez considere testar sem este bloco de código também:

open_file_cache max=5000 inactive=20s;
open_file_cache_valid    30s;
open_file_cache_min_uses 2;
open_file_cache_errors   on;

parece-me que você está tentando carregar muito em ram inicialmente com php, mas também parece que seu site é um pouco intensivo em recursos baseado no uso de memória no topo, você já considerou um opcode cacher como APC? link

    
por 26.07.2011 / 09:37
2

Eu uso uma configuração semelhante com o nginx e o php-fpm com o APC. Os servidores Min e Max são um pouco altos, eu também tenho uma máquina virtual com cerca de 500MB de memória por máquina. Depois de ler o link , ajustei minhas máquinas para o seguinte.

pm.max_children = 6
pm.start_servers = 2
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.max_requests = 50

Minhas máquinas trabalham com processos de 4 php-fpm em cerca de 60mb cada, consumindo cerca de 252mb, o que deixa mais recursos para o nginx / mysql / whatnot.

Experimente: se não atender à sua necessidade, ajuste-a um pouco mais.

    
por 09.01.2013 / 20:05
0

Estou um pouco inseguro porque você está fazendo compressão in-line gz, isso demanda ciclos de CPU ... por que você precisa disso?

Como anthonysomerset disse, diminuir o número de crianças php.

    
por 26.07.2011 / 10:55

Tags