Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[6]: скорость проксирования в связке nginx + proxy_p ass + Tomcat
Здравствуйте, Alexey.
"$request_time, время обработки запроса в секундах с точностью до миллисекунд;"
показывает от 1 ms до 98 ms, в среднем около 7 ms
Вы писали 19 апреля 2009 г., 18:57:51:
> в лог можно записать
> 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 уважением,
>>>>>> Александр.
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>
>>
|