ПРОЕКТЫ 


  АРХИВ 


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]

Кеширование проблема: перестает кешировать


  • To: nginx-ru@xxxxxxxxx
  • Subject: Кеширование проблема: перестает кешировать
  • From: "Dmitry E. Oboukhov" <unera@xxxxxx>
  • Date: Sun, 28 Jul 2013 01:54:40 +0400

продолжаю играться с кешированием
на тестах (в том числе конкурентных, ab) все было хорошо - попробовали
под нагрузкой.

nginx 1.2.1

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

proxy_cache_path /var/lib/nginx/proxy levels=1:2 keys_zone=proxy:30m 
max_size=1G;

    location ~ /cached/ {
        proxy_pass                              http://backend;
        proxy_cache proxy;
        proxy_buffering                         on;
        proxy_cache_valid                       200     60m;
        proxy_cache_lock                        on;
        proxy_method                            GET;
        proxy_cache_use_stale                   updating;

        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header    Host            $host;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        add_header  "X-Taxi-Location" "/cached";

        proxy_set_header    Cookie '';
        proxy_ignore_headers 'Set-Cookie';
        proxy_cache_key $uri;
        proxy_hide_header 'Set-Cookie';

        expires off;
    }


Все запросы что имеют в урле /cached/ кешируются на 60m

Но есть проблема.
пока нагрузка небольшая все замечательно:

смотрим логи nginx (grep /cached/) а так же смотрим логи бакенда
(такой же греп). Видим что на nginx приходят сотни запросов, а на
бакенд (апач) единицы.
Все хорошо.

затем повышаем нагрузку и где-то на 100-500 запросов в секунду на апач
начинают "просачиваться" запросы минуя кеш.

то есть нормальное соотношение у нас там если он все кеширует = где-то
1000:1 (то есть на 1000 запросов nginx приходится один на бакенд).

но при работе под нагрузкой соотношение меняется к 1000:500 и местами
даже к 1000:800.
На апаче вижу строго одинаковые запросы (он эту нагрузку держит,
отдает 200'ки). в tcpdump никаких заголовков, касающихся кеша не вижу.
апач всегда выдает заголовок x-accel-expires: 600 для всех ответов по
роуту /cached/.

в error логе nginx ошибок никаких про кеш нет.

правда на старте выдает вот такую фигатень:

2013/07/27 23:53:32 [info] 9945#0: Using 32768KiB of shared memory for push 
module in /etc/nginx/nginx.conf:65
2013/07/27 23:53:32 [alert] 9952#0: epoll_ctl(1, 0) failed (1: Operation not 
permitted)
2013/07/27 23:53:32 [alert] 9952#0: failed to register channel handler while 
initializing push module worker (1: Operation not permitted)
2013/07/27 23:53:32 [alert] 9953#0: epoll_ctl(1, 0) failed (1: Operation not 
permitted)
2013/07/27 23:53:32 [alert] 9953#0: failed to register channel handler while 
initializing push module worker (1: Operation not permitted)
2013/07/27 23:53:32 [alert] 2232#0: cache manager process 9952 exited with 
fatal code 2 and cannot be respawned

В какую сторону покопать?


-- 

. ''`.                               Dmitry E. Oboukhov
: :?  :   email: unera@xxxxxxxxxx jabber://UNera@xxxxxx
`. `~?              GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555  E438 AB8C 00CF F8E2 6537

Attachment: signature.asc
Description: Digital signature

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.