ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

php fastcgi server tuning | disabling access_log



Добрый вечер,



подскажите, что можно подтюнинговать при запуске php как FastCGI?

Какие есть узкие места и как их определять?

Есть ли какие-то методики?



При очень большом количестве запросов (синтетическая нагрузка с помощью ab) вот 
такое в error_log:



2007/08/01 22:01:45 [info] 18126#0: *158078 client closed prematurely 
connection, so upstream connection is closed too while connecting to upstream, 
client: *CUT*, server: *CUT*, URL: "/show.php", upstream: 
"fastcgi://127.0.0.1:9000", host: "*CUT*"

2007/08/01 22:01:45 [info] 18126#0: *157896 client closed prematurely 
connection, so upstream connection is closed too while connecting to upstream, 
client: *CUT*, server: *CUT*, URL: "/show.php", upstream: 
"fastcgi://127.0.0.1:9000", host: "*CUT*"



ab запускаю так:

ab -n 1000000 -c 400  "http://server/show.php";

Если -c 40, то работает нормально, обслуживается примерно 850 запросов в 
секунду.



И ещё маленький вопрос. Как-то можно в nginx вообще отключить access_log?

Вот такой конфиг:



user  nginx nginx;

worker_processes  4;

error_log  /var/log/nginx/error.log debug;

events {

    worker_connections  2048;

    use epoll;

}

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"';

    sendfile        on;

    keepalive_timeout  0;

    server {

        listen       CUT_IP:80;

        server_name  CUT_SERVER;

        send_timeout  30;

        client_body_timeout 30;

        client_header_buffer_size 4k;

        location / {

            root   /home/test/;

            index  index.php index.html index.htm;

        }

        error_page  404              /404.html;

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   /home/nginx/htdocs;

        }

        location ~ \.php$ {

            fastcgi_pass        127.0.0.1:9000;

            fastcgi_index       index.php;

            fastcgi_param       SCRIPT_FILENAME 
/home/test/adv$fastcgi_script_name;

            fastcgi_param       _SERVER         /home/test;

            fastcgi_param       DOCUMENT_ROOT   /home/test;

            include             /etc/nginx/fastcgi_params;

        }

        location ~ /\.ht {

            deny  all;

        }

    }

}



В каталоге логов nginx'а всегда присутствует файл access_log, который 
наполняется логом запросов. Логов очень много и после тестирования хочется их 
отключить.



--

Ilyas



 




Copyright © Lexa Software, 1996-2009.