Re: true 414 status code

2013-09-06 Пенетрантность Vladimir Getmanshchuk
Спасибо починилось.
Пусть тут полежит:

--- src/http/ngx_http_header_filter_module.c.orig 2013-05-13
10:43:28.0 +
+++ src/http/ngx_http_header_filter_module.c 2013-09-05 14:37:15.011369647
+
@@ -92,10 +92,7 @@
 ngx_string(411 Length Required),
 ngx_string(412 Precondition Failed),
 ngx_string(413 Request Entity Too Large),
-ngx_null_string,  /* 414 Request-URI Too Large, but we never send it
-   * because we treat such requests as the HTTP/0.9
-   * requests and send only a body without a header
-   */
+ngx_string(414 Request-URI Too Large),
 ngx_string(415 Unsupported Media Type),
 ngx_string(416 Requested Range Not Satisfiable),

@@ -270,6 +267,12 @@
 len += NGX_INT_T_LEN;
 status_line = NULL;
 }
+
+if (status_line  status_line-len == 0) {
+status = r-headers_out.status;
+len += NGX_INT_T_LEN;
+status_line = NULL;
+}
 }

 clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);


On Wed, Sep 4, 2013 at 1:51 PM, Валентин Бартенев vb...@nginx.com wrote:

 On Wednesday 04 September 2013 13:54:18 Vladimir Getmanshchuk wrote:
  Даже идиотизм типа:
 
  error_page 414 =414 @414;
 
  location @414 {
return 414;
  }
  не дал результат - получаю 200
 
  2013/09/04 09:40:10 [info] 5564#0: *45 client sent too long URI while
  reading client request line, client: 123.123.123.123, server:
  host.example.com, request: GET
 
 /file.php?qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasd
 
 fghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiop
 
 asdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyu
 
 iopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwer
 
 tyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmq
 
 wertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvb
 
 nmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzx
 
 cvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjk
 
 lzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfg
 
 hjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopas
 
 dfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuio
 
 pasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwerty
 
 uiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwe
 
 rtyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnm
 
 qwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcv
 
 bnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklz
 
 xcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghj
 
 klzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdf
 
 ghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopa
 
 sdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyui
 
 opasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwert
 
 yuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqw
 
 ertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbn
 
 mqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxcvbnmqwertyuiopasdfghjklzxc
  vbnmqwertyuiopasdfghjklzxcvbnmqwer 2013/09/04 09:40:10 [debug] 5564#0:
 *45
  http finalize request: 414, ? a:1, c:1
  2013/09/04 09:40:10 [debug] 5564#0: *45 event timer del: 15:
 1378287669763
  2013/09/04 09:40:10 [debug] 5564#0: *45 http special response: 414, ?
  2013/09/04 09:40:10 [debug] 5564#0: *45 test location: @414
  2013/09/04 09:40:10 [debug] 5564#0: *45 using location: @414 ?
  2013/09/04 09:40:10 [debug] 5564#0: *45 rewrite phase: 3
  2013/09/04 09:40:10 [debug] 5564#0: *45 http finalize request: 414, ?
  a:1, c:2
  2013/09/04 09:40:10 [debug] 5564#0: *45 http special response: 414, ?
  2013/09/04 09:40:10 [debug] 5564#0: *45 http set discard body
  2013/09/04 09:40:10 [debug] 5564#0: *45 xslt filter header
  2013/09/04 09:40:10 [debug] 5564#0: *45 HTTP/1.1
  Server: nginx/1.2.9
  Date: Wed, 04 Sep 2013 09:40:10 GMT
  Content-Type: text/html
  Content-Length: 192
  Connection: close
 
 [..]

 Это не 200, а просто невалидный ответ.  Патч, исправляющий проблему, уже
 лежит
 на ревью:
 http://mailman.nginx.org/pipermail/nginx-devel/2013-April/003609.html

 Плюс вдогонку ещё один:

 # HG changeset patch
 # User Valentin Bartenev vb...@nginx.com
 # Date 1378228039 -14400
 # Node ID 9f8ebfbe04f28544fd9cfc1473679aee13202506
 # Parent  659464c695b7c70f64207462d0e1a4ee3d018583
 Return reason phrase for 414.

 After 62be77b0608f nginx can return this code.

 diff -r 659464c695b7 -r 9f8ebfbe04f2
 src/http/ngx_http_header_filter_module.c
 --- a/src/http/ngx_http_header_filter_module.c  Mon Sep 02 

Re: Использование try_files

2013-09-06 Пенетрантность Alexander Moskalenko
location ^/(?filename.*)\.(php|html)$ {

fastcgi_pass   ...;

fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
fastcgi_param  SCRIPT_NAME  /index.php;
fastcgi_param  QUERY_STRING key=$filename;

}

2013/9/6 Sargas sarga...@gmail.com:
 Сейчас используется

 if (!-e $request_filename) {
  rewrite ^/(.*)\.(php|html)$ /index.php?key=$1 break;
 }

 Хочется без if'а



 4 сентября 2013 г., 3:25 пользователь Sargas sarga...@gmail.com написал:

 Приветствую.

 Подскажите, пожалуйста как переписать апачевские реврайты

 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)\.(php|html)$ /index.php?key=$1 [L,QSA]


 на nginx/FastCGI с использованием try_files

 В документации (http://sysoev.ru/nginx/docs/faq.html) есть пример с
 именованным локейшеном

 location / {
 try_files  $uri  $uri/  @drupal;
 }

 location @drupal {
 fastcgi_pass   ...;

 fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
 fastcgi_param  SCRIPT_NAME  /index.php;
 fastcgi_param  QUERY_STRING q=$uri$args;

 ... прочие fastcgi_param
 }

 Вопрос в том как в QUERY_STRING передать имя файла, но без его расширения
 (php|html).

 Чтобы работали подобные ссылки
 http://www.example.com/channels.php  =
 http://www.example.com/index.php?key=channels



 И вопрос по директиве accept_mutex
 http://nginx.org/ru/docs/ngx_core_module.html#accept_mutex
 Судя по описанию выключать её не рекомендуется. А в какой ситуации может
 понадобится её выключить? :)



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

200 ответ при отсутсвии файла

2013-09-06 Пенетрантность valch85
День добрый, продублировал еще и в эту ветку, тк не уверен что проблема в
самом php.

Пытаюсь настроить nginx для wordpress (использование в сабдиректории)

location /blog2 {
access_log /data0/logs/nginx/blog_log blog2;
error_log /var/log/nginx/test.log debug;
index index.php;
root /var/www/blog2.site.com;
try_files $uri $uri/ /blog2/index.php?$args;
location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(/blog2)(/.*)$;
fastcgi_index index.php;
fastcgi_intercept_errors on;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}

при этом получаю 200 ответ на любой мой запрос
напримет http://www.site.com/blog2/luboizapros


2 проблема, которую видно из логов, это то что nginx пытается найти файлы в
/var/www/blog2.site.com/blog2

256.256.256.256 - - [05/Sep/2013:11:57:34 +] GET /blog2/index.php
HTTP/1.1 200 226 - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.65 Safari/537.36
0.00
256.256.256.256 - - [05/Sep/2013:11:57:40 +] GET /blog2 HTTP/1.1 200
226 - Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/29.0.1547.65 Safari/537.36 0.00


подскажите pls что это или куда стоит обратить внимание для решения проблемы
?

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,242619,242619#msg-242619

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

Re: 200 ответ при отсутсвии файла

2013-09-06 Пенетрантность Daniel Podolsky
 try_files $uri $uri/ /blog2/index.php?$args;
 при этом получаю 200 ответ на любой мой запрос
ну так тут и написано - если файла нет, то отдать /blog2/index.php

в чем проблема?
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Использование try_files

2013-09-06 Пенетрантность Sargas
Спасибо, но не работает.

Performing sanity check on nginx configuration:
nginx: [emerg] unknown filename variable
nginx: configuration file /usr/local/etc/nginx/nginx.conf test failed

http://nginx.org/ru/docs/http/ngx_http_core_module.html#variables нет такой
встроенной переменной :(


6 сентября 2013 г., 10:55 пользователь Alexander Moskalenko 
alexander.moskale...@gmail.com написал:

 location ^/(?filename.*)\.(php|html)$ {

 fastcgi_pass   ...;

 fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
 fastcgi_param  SCRIPT_NAME  /index.php;
 fastcgi_param  QUERY_STRING key=$filename;

 }

 2013/9/6 Sargas sarga...@gmail.com:
  Сейчас используется
 
  if (!-e $request_filename) {
   rewrite ^/(.*)\.(php|html)$ /index.php?key=$1 break;
  }
 
  Хочется без if'а
 
 
 
  4 сентября 2013 г., 3:25 пользователь Sargas sarga...@gmail.com
 написал:
 
  Приветствую.
 
  Подскажите, пожалуйста как переписать апачевские реврайты
 
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)\.(php|html)$ /index.php?key=$1 [L,QSA]
 
 
  на nginx/FastCGI с использованием try_files
 
  В документации (http://sysoev.ru/nginx/docs/faq.html) есть пример с
  именованным локейшеном
 
  location / {
  try_files  $uri  $uri/  @drupal;
  }
 
  location @drupal {
  fastcgi_pass   ...;
 
  fastcgi_param  SCRIPT_FILENAME  /path/to/index.php;
  fastcgi_param  SCRIPT_NAME  /index.php;
  fastcgi_param  QUERY_STRING q=$uri$args;
 
  ... прочие fastcgi_param
  }
 
  Вопрос в том как в QUERY_STRING передать имя файла, но без его
 расширения
  (php|html).
 
  Чтобы работали подобные ссылки
  http://www.example.com/channels.php  =
  http://www.example.com/index.php?key=channels
 
 
 
  И вопрос по директиве accept_mutex
  http://nginx.org/ru/docs/ngx_core_module.html#accept_mutex
  Судя по описанию выключать её не рекомендуется. А в какой ситуации может
  понадобится её выключить? :)
 
 
 
  ___
  nginx-ru mailing list
  nginx-ru@nginx.org
  http://mailman.nginx.org/mailman/listinfo/nginx-ru
 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Использование try_files

2013-09-06 Пенетрантность Daniel Podolsky
 nginx: [emerg] unknown filename variable
Это вам прописано обновление nginx, до версии с поддержкой именованных
групп в регекспах.
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Использование try_files

2013-09-06 Пенетрантность Sargas
Используется последний stable без сторонних модулей.


# nginx -v
nginx version: nginx/1.4.2
configure arguments: --prefix=/usr/local/etc/nginx --with-cc-opt='-I
/usr/local/include' --with-ld-opt='-L /usr/local/lib'
--conf-path=/usr/local/etc/nginx/nginx.conf
--sbin-path=/usr/local/sbin/nginx --pid-path=/var/run/nginx.pid
--error-log-path=/var/log/nginx-error.log --user=www --group=www
--http-client-body-temp-path=/var/tmp/nginx/client_body_temp
--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi_temp
--http-proxy-temp-path=/var/tmp/nginx/proxy_temp
--http-scgi-temp-path=/var/tmp/nginx/scgi_temp
--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi_temp
--http-log-path=/var/log/nginx-access.log --without-http-cache
--with-http_geoip_module --with-http_realip_module
--with-http_stub_status_module --with-pcre


6 сентября 2013 г., 12:26 пользователь Daniel Podolsky
onoko...@gmail.comнаписал:

  nginx: [emerg] unknown filename variable
 Это вам прописано обновление nginx, до версии с поддержкой именованных
 групп в регекспах.
 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

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

Ошибки SSL при отдаче файлов.

2013-09-06 Пенетрантность gatesat
Приветствую !

Имеем nginx 1.4.2 под debian-ом.

При отдаче файлов без использования SSL все ОК, при отдаче файлов с
использованием SSL файлы отдаются, но в логах я вижу много записей
SSL_get_error: 3

2013/09/06 12:26:36 [debug] 2504#0: *4 SSL buf copy: 16048
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL to write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL buf copy: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL to write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL buf copy: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL to write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL buf copy: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL to write: 16384
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_write: -1
2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_get_error: 3

И так много раз пока качается файл.
Приседания с sendfile on/off и размером разных буферов картину не меняют.
Гугл и поиск по форуму ответа не подсказали, поэтому прошу совета здесь, в
какую сторону смотреть ?

Заранее благодарен, Иван.

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,242624,242624#msg-242624

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

Re: Использование try_files

2013-09-06 Пенетрантность Daniel Podolsky
 Используется последний stable без сторонних модулей.
Вариантов 2:
1) вы невнимательно читали, и не дописали именованное выделение в регексп
2) у вас опечатка в конфиге, используется неверное имя именованного выделения
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Ошибки SSL при отдаче файлов.

2013-09-06 Пенетрантность Anton Yuzhaninov

On 09/06/13 13:32, gatesat wrote:

При отдаче файлов без использования SSL все ОК, при отдаче файлов с
использованием SSL файлы отдаются, но в логах я вижу много записей
SSL_get_error: 3

...

2013/09/06 12:26:36 [debug] 2504#0: *4 SSL_get_error: 3


То что сообщение выводится на уровне debug намекает на то, что на него можно не 
обращать внимание. Особенно если все работает.


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

Re: Перенаправление пользователей в зависимости от занятости канала

2013-09-06 Пенетрантность Dmitry Ivanov
Здравствуйте, romas1982.

Вы писали 6 сентября 2013 г., 14:16:53:

 Добрый день, 

 Есть канал в 500мб/c и задача раздавать видео через nginx. Но при условии,
 что в случае, если из 500мб/c будет съедено 400 - всех приходящих новых
 пользователей редиректить на внешний cdn. 

 Подскажите пожалуйста, существует ли решение средствами nginx померять канал
 так, чтобы можно было if'ом,например, отгонять пользователей на cdn? (может
 модуль есть такой готовый).

Измерять чем-то внешним, вешать/убирать флаг, наличие флага проверять
nginx'ом.

-- 
С уважением,
 Dmitry  mailto:nginx...@sadok.spb.ru

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

Re: Использование try_files

2013-09-06 Пенетрантность Sargas
Разобрался. Нужно было тильду добавить

location ~^/(?filename.*)\.(php|html)$

Всем спасибо за помощь :)


6 сентября 2013 г., 12:50 пользователь Daniel Podolsky
onoko...@gmail.comнаписал:

  Используется последний stable без сторонних модулей.
 Вариантов 2:
 1) вы невнимательно читали, и не дописали именованное выделение в регексп
 2) у вас опечатка в конфиге, используется неверное имя именованного
 выделения
 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

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

Алгоритм удаления данных из кэша

2013-09-06 Пенетрантность Gelun, Artem
Простите, если где-то тема освещалась, но не могу найти ни в доках, ни в
рассылке, ни в гугле ...

Хотелось бы понимать алгоритм по которому cache-manager удаляет объекты из
кэша при недостаточности объёма самого кэша. Какие критерии учитываотся, в
каком порядке и т.п.? Может быть есть где-то детальное описание? или курить
исходники?
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: 200 ответ при отсутсвии файла

2013-09-06 Пенетрантность Dmitriy Lyalyuev

Это результат работы index.php
Смотрите в его сторону.

06.09.2013 15:33, valch85 пишет:

проблема в том что он отдает при этом пустую страницу и код ответа 200 при
этом

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,242619,242637#msg-242637

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



--
Dmitriy Lyalyuev
http://lyalyuev.info

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

Re: Алгоритм удаления данных из кэша

2013-09-06 Пенетрантность Gelun, Artem
Спасибо!

Я считал что в nginx первичной является документация на русском, но в ней
всё менее конкретно:

Специальный процесс cache manager следит за максимальным размером кэша,
 заданным параметром max_size, и при превышении его размеров *удаляет
 наименее востребованные данные*


наименее востребованные можно и понимать по разному (LRU и LFU на него,
как минимум, тянут), и на название алгоритма не похоже ))

Нет ли планов реализовать другие методы кэширования? ведь LRU далеко не для
всех нагрузок оптимальна.




6 сентября 2013 г., 15:42 пользователь Валентин Бартенев
vb...@nginx.comнаписал:

 On Friday 06 September 2013 14:34:02 Gelun, Artem wrote:
  Простите, если где-то тема освещалась, но не могу найти ни в доках, ни в
  рассылке, ни в гугле ...
 
  Хотелось бы понимать алгоритм по которому cache-manager удаляет объекты
 из
  кэша при недостаточности объёма самого кэша. Какие критерии учитываотся,
 в
  каком порядке и т.п.? Может быть есть где-то детальное описание? или
 курить
  исходники?

 http://nginx.org/r/proxy_cache_path/ru

  | The special cache manager process monitors the maximum cache size set
 by
  | the max_size parameter. When this size is exceeded, it removes the least
  | recently used data.


 http://en.wikipedia.org/wiki/Cache_algorithms#Least_Recently_Used

 --
 Валентин Бартенев
 http://nginx.org/en/donation.html

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

Re: Алгоритм удаления данных из кэша

2013-09-06 Пенетрантность Валентин Бартенев
On Friday 06 September 2013 17:25:42 Gelun, Artem wrote:
 Спасибо!
 
 Я считал что в nginx первичной является документация на русском, но в ней
 всё менее конкретно:
 
 Специальный процесс cache manager следит за максимальным размером кэша,
 
  заданным параметром max_size, и при превышении его размеров *удаляет
  наименее востребованные данные*
 
 наименее востребованные можно и понимать по разному (LRU и LFU на него,
 как минимум, тянут), и на название алгоритма не похоже ))
 
 Нет ли планов реализовать другие методы кэширования? ведь LRU далеко не для
 всех нагрузок оптимальна.
 

Какие интересуют?

--
Валентин Бартенев
http://nginx.org/en/donation.html
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Алгоритм удаления данных из кэша

2013-09-06 Пенетрантность Gelun, Artem
LFU, к примеру (сейчас у нас ситуация, когда из-за нехватки кэша (tmpfs)
много вытеснений низкочастотными запросами высокочастотных)

Вообще было бы здОрово добавить возможность написания кастомных модулей
управления кэшом, чтобы не приходилось переписывать весь proxy_module или
fastcgi_module если потребуется реализовать своё кэширование с каким-то
совсем нестандартным алгоритмом.

Ещё одно - многоуровневые кэши (конечно, их можно реализовать
проксированием запросов на другой server, но это как-то криво и гонять
несколько гигабит через loopback нехорошо)



6 сентября 2013 г., 17:34 пользователь Валентин Бартенев
vb...@nginx.comнаписал:

 On Friday 06 September 2013 17:25:42 Gelun, Artem wrote:
  Спасибо!
 
  Я считал что в nginx первичной является документация на русском, но в ней
  всё менее конкретно:
 
  Специальный процесс cache manager следит за максимальным размером кэша,
 
   заданным параметром max_size, и при превышении его размеров *удаляет
   наименее востребованные данные*
 
  наименее востребованные можно и понимать по разному (LRU и LFU на него,
  как минимум, тянут), и на название алгоритма не похоже ))
 
  Нет ли планов реализовать другие методы кэширования? ведь LRU далеко не
 для
  всех нагрузок оптимальна.
 

 Какие интересуют?

 --
 Валентин Бартенев
 http://nginx.org/en/donation.html
 ___
 nginx-ru mailing list
 nginx-ru@nginx.org
 http://mailman.nginx.org/mailman/listinfo/nginx-ru

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