Re: Re[4]: скорость проксирования в связке nginx + proxy_pass + Tomcat

Alexey V. Karagodov kav at karagodov.name
Sun Apr 19 18:57:51 MSD 2009


в лог можно записать
http://sysoev.ru/nginx/docs/http/ngx_http_log_module.html#log_format
можно на стороне бекенда наверно тоже

On 19.04.2009, at 18:29, BestPersons.ru wrote:

> Здравствуйте, Alexey.
>
> А как это можно измерить, менять исходники nginx?
>
> Вы писали 19 апреля 2009 г., 17:45:08:
>
>> а время "общения" с бекендом на один запрос можешь измерить?
>> т.е. сколько времени нгинх тратит на обработку всего запроса клиента
>
>> On 19.04.2009, at 17:10, BestPersons.ru wrote:
>
>>> Здравствуйте, Alexey.
>>>
>>> Nginx не кладет ответы на диск в моем случае.
>> т.е. совсем нет файликов в proxy_temp_path ?
>
>>> Если сделать 1 воркер, то скорость падает до 1400 запросов в  
>>> секунду.
>>> Увеличение буфферов прокси ситуацию не меняют.
>>>
>>>
>>> Вы писали 19 апреля 2009 г., 16:37:30:
>>>
>>>> есть подозрение, что нгинх кладёт часть или большую часть
>>>> проксированных ответов на диск, ибо в память не влазит
>>>> 3 вокера здесь много, 1 - максимум
>>>> можно попробовать увеличить буфера прокси, но тогда нгинх будет
>>>> просто
>>>> неприлично много кушать памяти
>>>
>>>> On 19.04.2009, at 16:04, BestPersons.ru wrote:
>>>
>>>>> Здравствуйте.
>>>>>
>>>>> Недавно столкнулся с проблемой, есть Apache Tomcat 6, отдает
>>>>> страницы со скоростью 5500 req/sec (100 параллельных клиентов)
>>>>>
>>>>> Если перед ним поставить nginx на той же машине, то скорость
>>>>> падает до
>>>>> 2000 req/sec.
>>>>>
>>>>> Получается nginx с proxy_pass более чем в 2 раза снижает скорость,
>>>>> мне
>>>>> это кажется странным.
>>>>>
>>>>> Так и должно быть?
>>>>>
>>>>> Крутил различные параметры конфига nginx - не помогает. В  
>>>>> error.log
>>>>> ошибок при бенчмарке не появляется. Бенчмарк запускается по 100 Mb
>>>>> сети с
>>>>> другой машины, в сеть не упирается.
>>>>>
>>>>> Бенчмарк вызывается следующей коммандой: httperf --server
>>>>> 192.168.0.10 --port 80 --uri / --num-conn 100 --num-call 100 -- 
>>>>> rate
>>>>> 100 --timeout 5
>>>>>
>>>>> Машинка: AMD Athlon 64 X2 Dual Core Processor 5200+, 2Gb RAM
>>>>>
>>>>> nginx.conf:
>>>>> user  nobody;
>>>>> worker_processes  3;
>>>>> worker_rlimit_core 2000M;
>>>>>
>>>>> error_log  logs/error.log;
>>>>> pid        logs/nginx.pid;
>>>>>
>>>>>
>>>>> events {
>>>>>  worker_connections  50000;
>>>>>  use epoll;
>>>>> }
>>>>>
>>>>>
>>>>> http {
>>>>>  server_names_hash_max_size 10000;
>>>>>  server_names_hash_bucket_size 256;
>>>>>  client_max_body_size 5m;
>>>>>
>>>>>  log_format IP '$remote_addr';
>>>>>  server_tokens off;
>>>>>  reset_timedout_connection on;
>>>>>
>>>>>  include       mime.types;
>>>>>  default_type  application/octet-stream;
>>>>>
>>>>>  sendfile        on;
>>>>>  tcp_nopush     on;
>>>>>  tcp_nodelay     on;
>>>>>
>>>>>  keepalive_timeout  70;
>>>>>
>>>>>  access_log off;
>>>>>  recursive_error_pages on;
>>>>>
>>>>>  upstream bpbackends {
>>>>>       server 127.0.0.1:8080;
>>>>>  }
>>>>>
>>>>>  server {
>>>>>      listen 80;
>>>>>      server_name  localhost;
>>>>>
>>>>>      location / {
>>>>>          proxy_pass   http://bpbackends;
>>>>>          proxy_set_header    Host    $host;
>>>>>          proxy_set_header X-Forwarded-For $remote_addr;
>>>>>      }
>>>>>  }
>>>>> }
>>>>>
>>>>> C уважением,
>>>>> Александр.
>>>>>
>>>>>
>>>>>
>>>
>>>
>
>






More information about the nginx-ru mailing list