Частичный сброс кеша / сброс кеша для отдельного server_name или location
Все привет! Посоветуйте пожалуйста удобный механизм сброса кеша для отдельного server_name или location. Надо использовать директиву proxy_cache_purge или есть что-то более разумное? Спасибо. ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re[2]: Как вернуть размер проксируемого ответа?
Здравствуйте, Ник. это первое, что пришло мне в голову и, к сожалению, Content-Length не передаётся. Если ответ на GET идёт чанками, то и HEAD не выдаст размер. Отключите чанки (что может быть чревато для больших ответов) и должен появиться Content-Length. -- С уважением, Михаил mailto:postmas...@softsearch.ru ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Частичный сброс кеша / сброс кеша для отдельного server_name или location
Рассмотрел вариант с proxy_cache_bypass, но возник вопрос, а если у меня несколько фронтенд nginx и при вводе домена в браузере я попадаю то на один фронтенд nginx то на другой , а уж затем на бекенд. Получается что при использовании proxy_cache_bypass я почищу кеш только на одном произвольном фронтенд nginx, а на остальных фронтендах кеш останется старый. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? 25 мая 2015 г., 12:44 пользователь Иван Мишин simplebo...@gmail.com написал: Все привет! Посоветуйте пожалуйста удобный механизм сброса кеша для отдельного server_name или location. Надо использовать директиву proxy_cache_purge или есть что-то более разумное? Спасибо. ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Частичный сброс кеша / сброс кеша для отдельного server_name или location
proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для Ну к примеру лежит у меня в кеше xxx.ru/page.html Если я обращусь к xxx.ru/page.html то получу ее из кеша, а если обращусь к xxx.ru/page.html используя спец заголовок описанный в proxy_cache_bypass, то запрос пойдет на бекенд а по возвращении ляжет в кеш тем самым обновив старый кеш . И уже при последующем обращении к xxx.ru/page.html я получу в ответ уже обновленный кеш. Разве нет? Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. Вариант хорош, но у меня кеш огромного размера и мне потребуется сбросить кеш для определенного server_name то я получу десятки тысяч файлов, которые не понятно каким средствами можно удалить. 25 мая 2015 г., 13:27 пользователь Roman Arutyunyan a...@nginx.com написал: Добрый день, On 25 May 2015, at 13:11, Иван Мишин simplebo...@gmail.com wrote: Рассмотрел вариант с proxy_cache_bypass, но возник вопрос, а если у меня несколько фронтенд nginx и при вводе домена в браузере я попадаю то на один фронтенд nginx то на другой , а уж затем на бекенд. Получается что при использовании proxy_cache_bypass я почищу кеш только на одном произвольном фронтенд nginx, а на остальных фронтендах кеш останется старый. proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для конкретного запроса. Для очистки кеша надо использовать директиву proxy_cache_purge, но она на данный момент доступна лишь в коммерческой версии. В любом случае изменения, конечно, будут касаться именно того nginx, на котором вы выполняете указанные действия. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. -- Roman Arutyunyan ___ 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: Как вернуть размер проксируемого ответа?
On Monday 25 May 2015 11:54:16 Михаил Монашёв wrote: Здравствуйте, Ник. это первое, что пришло мне в голову и, к сожалению, Content-Length не передаётся. Если ответ на GET идёт чанками, то и HEAD не выдаст размер. Отключите чанки (что может быть чревато для больших ответов) и должен появиться Content-Length. Не должен. К тому же, по умолчанию nginx использует HTTP/1.0 для запросов на бекенд, а там чанков быть и так не может. -- Валентин Бартенев ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Частичный сброс кеша / сброс кеша для отдельного server_name или location
On 25 May 2015, at 13:43, Иван Мишин simplebo...@gmail.com wrote: proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для Ну к примеру лежит у меня в кеше xxx.ru/page.html Если я обращусь к xxx.ru/page.html то получу ее из кеша, а если обращусь к xxx.ru/page.html используя спец заголовок описанный в proxy_cache_bypass, то запрос пойдет на бекенд а по возвращении ляжет в кеш тем самым обновив старый кеш . И уже при последующем обращении к xxx.ru/page.html я получу в ответ уже обновленный кеш. Разве нет? Да, работать будет. Если вас устраивает такой способ обновления кеша, то все ок. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. Вариант хорош, но у меня кеш огромного размера и мне потребуется сбросить кеш для определенного server_name то я получу десятки тысяч файлов, которые не понятно каким средствами можно удалить. Сделайте разные кеши для разных server_name, будете очищать всю директорию. 25 мая 2015 г., 13:27 пользователь Roman Arutyunyan a...@nginx.com написал: Добрый день, On 25 May 2015, at 13:11, Иван Мишин simplebo...@gmail.com wrote: Рассмотрел вариант с proxy_cache_bypass, но возник вопрос, а если у меня несколько фронтенд nginx и при вводе домена в браузере я попадаю то на один фронтенд nginx то на другой , а уж затем на бекенд. Получается что при использовании proxy_cache_bypass я почищу кеш только на одном произвольном фронтенд nginx, а на остальных фронтендах кеш останется старый. proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для конкретного запроса. Для очистки кеша надо использовать директиву proxy_cache_purge, но она на данный момент доступна лишь в коммерческой версии. В любом случае изменения, конечно, будут касаться именно того nginx, на котором вы выполняете указанные действия. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. -- Roman Arutyunyan ___ 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 -- Roman Arutyunyan ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Re[2]: Как вернуть размер проксируемого ответа?
Есть стороний api на который нельзя повлиять. Ответы этого api пришлось пропустить через свой nginx так как в ответах нет заголовка Access-Control-Allow-Origin. Есть запрос в ответ на который приходит json: массив хешей. И есть ситуация, когда нужно не тело ответа, а знание пуст ответ или нет, а так как ответ сам по себе может быть велик то хочется схитрить. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,259066,259103#msg-259103 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Частичный сброс кеша / сброс кеша для отдельного server_name или location
Добрый день, On 25 May 2015, at 13:11, Иван Мишин simplebo...@gmail.com wrote: Рассмотрел вариант с proxy_cache_bypass, но возник вопрос, а если у меня несколько фронтенд nginx и при вводе домена в браузере я попадаю то на один фронтенд nginx то на другой , а уж затем на бекенд. Получается что при использовании proxy_cache_bypass я почищу кеш только на одном произвольном фронтенд nginx, а на остальных фронтендах кеш останется старый. proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для конкретного запроса. Для очистки кеша надо использовать директиву proxy_cache_purge, но она на данный момент доступна лишь в коммерческой версии. В любом случае изменения, конечно, будут касаться именно того nginx, на котором вы выполняете указанные действия. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. -- Roman Arutyunyan ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Частичный сброс кеша / сброс кеша для отдельного server_name или location
Да, работать будет. Если вас устраивает такой способ обновления кеша, то все ок. В случае расположения директивы на уровне server, обратившись к xxx.ru http://xxx.ru/page.html используя спец заголовок, обновиться весь кеш ресурса к xxx.ru http://xxx.ru/page.html ? Сделайте разные кеши для разных server_name, будете очищать всю директорию. Слишком много server_name у меня для такой схемы, можно будет легко запутаться при настройке кеша для того или иного ресурса. 25 мая 2015 г., 14:31 пользователь Roman Arutyunyan a...@nginx.com написал: On 25 May 2015, at 13:43, Иван Мишин simplebo...@gmail.com wrote: proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для Ну к примеру лежит у меня в кеше xxx.ru/page.html Если я обращусь к xxx.ru/page.html то получу ее из кеша, а если обращусь к xxx.ru/page.html используя спец заголовок описанный в proxy_cache_bypass, то запрос пойдет на бекенд а по возвращении ляжет в кеш тем самым обновив старый кеш . И уже при последующем обращении к xxx.ru/page.html я получу в ответ уже обновленный кеш. Разве нет? Да, работать будет. Если вас устраивает такой способ обновления кеша, то все ок. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. Вариант хорош, но у меня кеш огромного размера и мне потребуется сбросить кеш для определенного server_name то я получу десятки тысяч файлов, которые не понятно каким средствами можно удалить. Сделайте разные кеши для разных server_name, будете очищать всю директорию. 25 мая 2015 г., 13:27 пользователь Roman Arutyunyan a...@nginx.com написал: Добрый день, On 25 May 2015, at 13:11, Иван Мишин simplebo...@gmail.com wrote: Рассмотрел вариант с proxy_cache_bypass, но возник вопрос, а если у меня несколько фронтенд nginx и при вводе домена в браузере я попадаю то на один фронтенд nginx то на другой , а уж затем на бекенд. Получается что при использовании proxy_cache_bypass я почищу кеш только на одном произвольном фронтенд nginx, а на остальных фронтендах кеш останется старый. proxy_cache_bypass не чистит кеш, а игнорит закешированный ответ для конкретного запроса. Для очистки кеша надо использовать директиву proxy_cache_purge, но она на данный момент доступна лишь в коммерческой версии. В любом случае изменения, конечно, будут касаться именно того nginx, на котором вы выполняете указанные действия. Выходит в моем случае кеш можно чистить только удалением файлов из каталога с кешем? В большинстве случаев это будет работать. -- Roman Arutyunyan ___ 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 -- Roman Arutyunyan ___ 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: Как вернуть размер проксируемого ответа?
Есть стороний api на который нельзя повлиять. Ответы этого api пришлось пропустить через свой nginx так как в ответах нет заголовка Access-Control-Allow-Origin. Есть запрос в ответ на который приходит json: массив хешей. И есть ситуация, когда нужно не тело ответа, а знание пуст ответ или нет, а так как ответ сам по себе может быть велик то хочется схитрить. Если даже по запросе по HTTP/1.0 не отдается Content-Length, значит, так уж устроен этот стороний API, на который нельзя повлиять. Но, может быть, он поддерживает HTTP Range Requests? ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Зависает сервер
Добрый вечер, такая проблема. Есть сервер А, который забирает с сервера Б статический JS файл, методом GET по HTTPS. Проблема такая: если на сервер А возникают траблы с сетью/нагрузкой, т.е. он чень медленно открывается, то за ним следом падает и сервер Б, причем так, что перестает отвечать по SSH. Логи пустые. В чем может быть проблема? Сервер А забивает канал серверу Б, если да, то как это лечить? Спасибо. Posted at Nginx Forum: http://forum.nginx.org/read.php?21,259117,259117#msg-259117 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru