Roman Arutyunyan
February 25, 2016 01:30PM
On Thu, Feb 25, 2016 at 06:44:03PM +0300, Vadim Lazovskiy wrote:
> 25 февраля 2016 г., 16:53 пользователь Roman Arutyunyan <arut@nginx.com>
> написал:
> >
> >
> > Маловат фрагмент. Хотелось бы посмотреть на весь запрос и подзапросы.
> >
> >
> Сразу прошу прощения за размер логов.
>
> http://disk.karelia.pro/833rexx/
>
> Два лога:
> 1. с proxy_cache_min_uses 1. Работает, как задумывалось.
> Запрос на перемотку можно найти по диапазону 498197221-1279019570.
>
> 2. с proxy_cache_min_uses 50. Ломается перемотка из-за игнорирования Range
> (или учета If-Range, кто его разберет).
> Запрос на пеермотку можно найти по диапазону 467829492-1279019570.

Попробуйте патч в аттаче.

> И чтоб 2 раза не вставать, спрошу, отчего может возникать проблема с
> переполнением диска?
> Диск 220G, max_cache опустил до 190G, а на деле диск забивается под
> завязку, причем именно кешем (proxy_cache_min_uses 1, slice 10m, 10-20 rps).
> В temp в этот момент не более 20 временных файлов размером ~ 10 мегабайт. В
> кеше все элементы <= 10 мегабайт.
> Незакрытых удаленных файлов на диске нет.
> В error log куча сообщений c No space left on device.

Может быть такое, что кеш растет так быстро, что nginx не успевает его очищать.

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

Насколько часто это у вас это происходит?

--
Roman Arutyunyan
# HG changeset patch
# User Roman Arutyunyan <arut@nginx.com>
# Date 1456424237 -10800
# Thu Feb 25 21:17:17 2016 +0300
# Node ID 93266a5c3377443acc1091fd8b2f3553e19bfa09
# Parent 6812ca9a800247d2428f487d9b4938a2b499b7d8
[mq]: upstream-lmt

diff -r 6812ca9a8002 -r 93266a5c3377 src/http/ngx_http_upstream.c
--- a/src/http/ngx_http_upstream.c Tue Feb 16 17:49:14 2016 +0300
+++ b/src/http/ngx_http_upstream.c Thu Feb 25 21:17:17 2016 +0300
@@ -4146,15 +4146,8 @@ ngx_http_upstream_process_last_modified(
u = r->upstream;

u->headers_in.last_modified = h;
-
-#if (NGX_HTTP_CACHE)
-
- if (u->cacheable) {
- u->headers_in.last_modified_time = ngx_parse_http_time(h->value.data,
- h->value.len);
- }
-
-#endif
+ u->headers_in.last_modified_time = ngx_parse_http_time(h->value.data,
+ h->value.len);

return NGX_OK;
}
@@ -4651,15 +4644,8 @@ ngx_http_upstream_copy_last_modified(ngx
*ho = *h;

r->headers_out.last_modified = ho;
-
-#if (NGX_HTTP_CACHE)
-
- if (r->upstream->cacheable) {
- r->headers_out.last_modified_time =
+ r->headers_out.last_modified_time =
r->upstream->headers_in.last_modified_time;
- }
-
-#endif

return NGX_OK;
}
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 25, 2016 05:04AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 25, 2016 05:54AM

Re: slice module и proxy_cache_min_uses больше единицы.

Roman Arutyunyan February 25, 2016 08:54AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 25, 2016 10:46AM

Re: slice module и proxy_cache_min_uses больше единицы.

Evgeniy Berdnikov February 25, 2016 10:54AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 25, 2016 11:28AM

Re: slice module и proxy_cache_min_uses больше единицы.

Roman Arutyunyan February 25, 2016 01:30PM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 26, 2016 02:46AM

Re: slice module и proxy_cache_min_uses больше единицы.

Roman Arutyunyan February 26, 2016 04:54AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 27, 2016 10:50AM

Re: slice module и proxy_cache_min_uses больше единицы.

Roman Arutyunyan February 27, 2016 11:10AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 27, 2016 11:58AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vadim Lazovskiy February 29, 2016 01:24AM

Re: slice module и proxy_cache_min_uses больше единицы.

Roman Arutyunyan February 29, 2016 03:48AM

Re: slice module и proxy_cache_min_uses больше единицы.

Vasiliy P. Melnik February 29, 2016 04:06AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 300
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready