Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[2]: скорость проксирования в связке nginx + proxy_p ass + Tomcat
Здравствуйте, Kostya.
По сети.
Вы писали 19 апреля 2009 г., 19:03:43:
> А перф гоняете локально или тоже по сети?
> BestPersons.ru wrote:
>> Здравствуйте, Kostya.
>>
>> Tomcat сейчас использует NIO коннектор.
>> Бенчмарк томката на прямую с опцией --http-version=1.0 дает теже 5500
>> req/sec.
>>
>> Вы писали 19 апреля 2009 г., 16:42:21:
>>
>>
>>> Соберите томкат с apr, должно помоч, или с nio коннектором, но я не
>>> особо понял чем он лучше.
>>> Проблема в том что Nginx не поддерживает кипалив с бекендом.
>>> Стандартному томкатовому коннектору становится плохо от такого.
>>> Запустите прямо к томкату перф с
>>>
>>
>>
>>> --http-version=1.0
>>>
>>
>>
>>> результат должен быть около ваших 2000 реквестов/сек
>>>
>>
>>
>>
>>> 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 уважением,
>>>> Александр.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>
>>
>>
>>
|