Re: Почему браузер не выставляет заголовок If-None-Match/ I f-Modified-Since для ресурсов у которых установлен etag?

2021-06-03 Thread S.A.N
Возможно у вас в DevTools браузера, стоит галочка "Disabled Cache" Posted at Nginx Forum: https://forum.nginx.org/read.php?21,291736,291745#msg-291745 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: http2 push — не планируется ли поддержка по аналогии с заголовком Link?

2020-04-27 Thread S.A.N
> В крайнем случае несложно пометить клиента стандартным способом через > cookie. Советую смотреть не на куки, а на наличия клиенских заголовков - If-None-Match и/или If-Modified-Since, только при отсутствии или не валидности данных заголовков делать push. Из нашего опыта - push полезен только

Re: Релиз Unit 1.10.0

2019-08-26 Thread S.A.N
> Единственный правильный способ тестирования - тестирование на реальных > нагрузках со своими собственными приложениями и задачами. Согласен, но это делают потом, на ранней стадии тестят синтетикой, просто чтобы примерно оценить оверхед, когда они увидят 6х замедления, это может отбить желания

Re: Релиз Unit 1.10.0

2019-08-25 Thread S.A.N
Сделал простой бенчмарк (wrk -c 50 -d 30s -t 50 http://127.0.0.1) вашего Hello World примера https://www.nginx.com/blog/nginx-unit-1-5-available-now/#go-node-js-applications И сравнил с HTTP сервером что мы юзаем (uWebSockets) Результаты: Unit - Requests/sec: 17384 uWebSockets - Requests/sec:

Re: Релиз Unit 1.9.0

2019-08-13 Thread S.A.N
> Есть сервис Pusher, который позволяет раздавать потоки по WebSocket. > Никакой инфраструктуры не нужно. Подозреваю там есть прямые и обратные Так мы тоже самое получаем безплатно и без сторонних сервисов, простой надстройкой nchan + uWebSockets.js Posted at Nginx Forum:

Re: Релиз Unit 1.9.0

2019-08-13 Thread S.A.N
> Что мешает реализовать данную функциональность в приложении? > Например, используя тот же упомянутый uWebSockets.js? Нам мешают те же причины что у вас, бизнесу выгодно чтобы мы писали больше бизнес логики и меньше писали инфрастуктурного кода. Да, можно сделать распределеную систему на Pub/Sub

Re: Битые файлы в кеше при gzip ответах

2019-08-13 Thread S.A.N
> кеше битые обрезанные файлы, при использовании на бэкенде gzip, тот же > баг Попробуйте выключить настройку в конфигt Nginx sendfile off; Нам это помогло. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,285250,285255#msg-285255 ___

Re: Релиз Unit 1.9.0

2019-08-13 Thread S.A.N
> Пока не планируем. Ясно, но тогда вот что выходит, тем кому нужен WebSocket, как правило нужен broadcast и возможностость подписать одного клиента к множеству каналов. Эти задачи уже успешно решены в nchan (модуль Nginx) и для Node.js есть uWebSockets.js (сишный модуль) к сожалению это означает

Re: nginx-1.17.3

2019-08-13 Thread S.A.N
> для мобильных клиентов есть (уже) TLS1.3 + early data, TFO (tcp fast > open). > пользуетесь ? TLS1.3 - да early data, TFO - нет, у нас проблема с частыми обрывами конекта в WebSocket, мобил клиенты этому сильно подвержены, из-за TCP... Posted at Nginx Forum:

Re: Релиз Unit 1.9.0

2019-08-13 Thread S.A.N
Возможно я не нашел, но в данной версии нет возможности broadcast каналов? Когда одно сообщения передается множеству WebSocket клиентов и как одного клиента подписать на множество каналов? Этого нет в текущей версии или вы не планируете этого делать и данный функционал нужно будет писать самому на

Re: nginx-1.17.3

2019-08-13 Thread S.A.N
В вашей дорожней карте, для ветки 1,17 есть в планах имплементация QUIC (HTTP/3), какие ваши оценки по времени это будет готово в этом году. И если не сложно скажите как вам QUIC там реально много профита для мобил клиентов, у нас очень много мобил HTTP клиентов и нам эта тема очень интересна.

Re: Релиз Unit 1.9.0

2019-06-16 Thread S.A.N
> Тем временем, мы продолжаем трудиться над поддержкой WebSocket для > модулей > Node.js и Java. Все почти готово; шансы на то, что это войдет в > следующий > выпуск - очень велики. Возможно уже есть документация и открытое бета тестирования для Node.js? > Напоминаю, что мы непрерывно находимся

Re: epoll_ctl: file exists ?

2019-05-04 Thread S.A.N
> RFC 8441, Но > это, скажем так, выглядит как хак, при этом малосовместимый с > существующей логикой работы через Upgrade, и имеет мало шансов > быть поддержанным.) Есть реализация (клиент и сервер) https://github.com/warmcat/libwebsockets В Chrome тоже давно работает.

Re: fastcgi keep conn on и fastcgi finish request() в PHP

2019-01-19 Thread S.A.N
> Я не слежу за разработкой PHP, но если вы по прежнему наблюдаете > проблему - можно предположить, что баг в PHP так и не поправили, и > fastcgi_finish_request() пользоваться не стоит. Да, у нас это была одна из причин, уйти от FPM, и перейти на Swoole https://www.swoole.co.uk/docs/ Потом на

Re: Релиз Unit 1.4

2018-09-22 Thread S.A.N
> Я заметил, что вы много всего просите, а могли бы стать нашим > крупнейшим > клиентом и тем самым влиять на ход разработки тех или иных > возможностей, > как в nginx, так и в Unit. Разработка обходится совсем не бесплатно и > потому получают приоритет в первую очередь те вещи, которые позволяют

Re: Релиз Unit 1.4

2018-09-21 Thread S.A.N
> поддержкой WebSockets, гибкой маршрутизацией запросов и выдачей статического контента. Этого действительно не хватает в Unit. НТТР кеширования, как в Nginx, тоже уже в разработке? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,281345,281350#msg-281350

Re: WebSockets over HTTP/2

2018-03-02 Thread S.A.N
> Но к вебсокетам все это никакого отношения не имеет, не так ли? Да, вы правы, мой ответ был в контексте НТТР запросов. Польза для WebSocket использовать сокет Н2, в том что он будет держать открытым сокет, который использует ajax запросы. У нас может быть 20-30 ajax потом минут 15 тишина, юзер

Re: WebSockets over HTTP/2

2018-03-02 Thread S.A.N
> От самого мультиплексирования на уровне приложения приемуществ особых > нет, > больше недостатков. Судите сами, на уровне приложения (браузера) сейчас есть два варианта: НТТР 1х - лимит 8 открытых сокетов на 1 хост, все запросы становятся в эти 8 очередей. НТТР 2 - в 1 сокет отправляются все

Re: WebSockets over HTTP/2

2018-03-02 Thread S.A.N
> А в чём преимущества HTTP2 для Вас? Вы пробовали делать замеры, > сравнивающие HTTP2 с HTTP1.1? Для нас преимущество только в мультиплексировании, других преимуществ нет, у нас просто много параллельных ajax запросов, НТТР 2 push не использовали, возможно тоже полезная штука, но практики

Re: WebSockets over HTTP/2

2018-03-01 Thread S.A.N
> Если/когда появится стандарт > и реализации в браузерах - посмотрим. Это уже работает в Chrome 66 (Canary) и Firefox разрабатывает реализацию, судя по всему браузеры пришли к консенсусу в этом вопросе. > Хотя вот лично мне - усиленно кажется, что конкретный драфт - суть > достаточно вялая и

WebSockets over HTTP/2

2018-03-01 Thread S.A.N
Chrome, реализовал WebSockets поверх HTTP/2 https://tools.ietf.org/html/draft-ietf-httpbis-h2-websockets-00 https://www.chromestatus.com/feature/6251293127475200 Есть в планах Nginx, реализации проксирование WebSockets поверх HTTP/2? Posted at Nginx Forum:

Re: Вопросы по http2 push

2018-02-28 Thread S.A.N
> Push cache очищается при закрытии > соединения, но все элементы при первом использовании браузером будут > помещены в http cache, так что всё нормально. > Подробнее здесь: > https://jakearchibald.com/2017/h2-push-tougher-than-i-thought/ Если ресурс отданный push ответом, используется на

Re: Вопросы по http2 push

2018-02-28 Thread S.A.N
> Не совсем понял ваши слова про "не кешируемый контент". По спецификации НТТР 2, браузер push ответы могут кешировать только в отдельном кеше соединенния (смотрите на connection_id в devtools), после закрытия соединения кеш очищается. Или я не прав, браузеры сохранят push ответы в общем кеше и

Re: Вопросы по http2 push

2018-02-27 Thread S.A.N
Я не вижу большой пользы от push, очень редкий случай когда нужно отправить дополнительный не кешируемый контент без запросов, или я ошибаюсь, вы можете перечислить свои use case? Спасибо. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,278784,278816#msg-278816

Re: unit-0.3 beta

2017-12-30 Thread S.A.N
> Иными словами сервис - это более узкий термин, определяющий выполняемую приложением роль. > Возможно он идеально подходит для systemd, но я бы не стал называть большинство веб-приложений сервисами. Я абсолютно согласен с этим определением. Но хочу обратить внимание что основная цель Systemd в

Re: unit-0.3 beta

2017-12-29 Thread S.A.N
> Как по вашему, firefox - это сервис или приложение? Можете обосновать > почему? Я же не ради холивара это писал :) Клиентские GUI приложения сервисами сложно назвать, но для меня: PHP-FPM - это сервис Node.js - это сервис Python WSGI - это сервис Go Server - это сервис Возможно у меня systemd

Re: unit-0.3 beta

2017-12-29 Thread S.A.N
Всех с наступающим НГ. Много раз себя ловил на мысли когда смотрел на JSON конфиг Unit, почему вы решили сервисы называть application? Я понимаю что NGINX Unit - это Application Server, но уже устоялись такие понятия как microservice, которые часто настраиваются как отдельные Unit для

Re: systemd: PID file /var/run/nginx.pid not readable (yet?) after start.

2017-11-23 Thread S.A.N
> С точки зрения практики - паттерн "daemon(); write_pidfile();" > используется чуть менее, чем везде, вплоть до соответствующих > библиотечных функций. Так что инициатива выглядит, скажем так, > сомнительной. > > Проще всего, IMHO, это было бы заткнуть на уровне systemd, > дожидаясь

Re: gzip filter failed to use preallocated memory

2017-11-21 Thread S.A.N
> Возможно. Я отправил его коллегам на review, если возражений не > будет - закоммичу. Спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,276955,277433#msg-277433 ___ nginx-ru mailing list nginx-ru@nginx.org

Re: gzip filter failed to use preallocated memory

2017-11-15 Thread S.A.N
Maxim Dounin Wrote: --- > Патч ниже по первой ошибке преаллокации пытается предполагать, что > мы работаем с jtk zlib, и работает соответственно. Если и это не > помогло - тогда уже начинает писать в лог alert'ы. Сработало, спасибо! В логе

Re: gzip filter failed to use preallocated memory

2017-11-11 Thread S.A.N
Maxim Dounin Wrote: --- > Я, впрочем, подозреваю, что на самом деле там не это, а то, что > лежит по адресу https://github.com/jtkukunas/zlib. Название и > содержимое пакета как бы намекает: > >

Re: gzip filter failed to use preallocated memory

2017-11-10 Thread S.A.N
> Есть смысл разобраться, что у вас используется вместо zlib, Из коробки в ОС установлена пропатченная Intel библиотека zlib https://software.intel.com/en-us/articles/how-to-use-zlib-with-intel-ipp-opertimization Вот что у нас выдает ldd ldd /usr/lib64/libz.so linux-vdso.so.1

Re: gzip filter failed to use preallocated memory

2017-11-10 Thread S.A.N
Есть смысл мне писать в bug report, по этой проблеме, или шансы на исправление близки к нулю? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,276955,277266#msg-277266 ___ nginx-ru mailing list nginx-ru@nginx.org

Re: unit-0.2 beta release

2017-10-20 Thread S.A.N
Я уже подымал эту тему на Github https://github.com/nginx/unit/issues/6 Будет хорошо создать здесь отдельные maillist для Unit. Я согласен с теми кто считает что Unit сложно будет конкурировать с PHP-FPM. 1. Простота в настройке и запуске разных версий РНР - это совсем не сложно, есть пакеты

gzip filter failed to use preallocated memory

2017-10-18 Thread S.A.N
Здравствуйте. Мы начали использовать OS ClearLinux for Intel® Architecture, (отличная производительность) Все работает хорошо, но в логах Nginx мы постоянно видим [alert] 31591#31591: *1 gzip filter failed to use preallocated memory: 65536 of 16368 Таких записей очень много, не смотря на их

Re: HTTP/2 + ALPN в Debian 8 Jessie

2017-08-11 Thread S.A.N
> > Для Fedora 25-26 (Open SSL 1.1) будет сборка? > Таких планов нет, т.к. популярность этих дистрибутивов на сервере, > кажется, невелика. Да, Fedora не популярна в продакшине, у неё своя ниша, она хорошо для тестов будущих версий RHEL. Уже вышла RedHat 7.4 у неё openssl 1.0.2k, скоро выйдет

Re: HTTP/2 + ALPN в Debian 8 Jessie

2017-07-25 Thread S.A.N
Для Fedora 25-26 (Open SSL 1.1) будет сборка? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,275648,275652#msg-275652 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: disable request body buffering for file upload

2017-07-21 Thread S.A.N
I advise you implementing - direct file upload. Read more: https://stackoverflow.com/questions/44371643/nginx-php-failing-with-large-file-uploads-over-6-gb/44751210#44751210 Posted at Nginx Forum: https://forum.nginx.org/read.php?2,275567,275602#msg-275602

Re: client_body_temp_path - permissions

2017-06-03 Thread S.A.N
> В таком виде, конечно, не закоммитят. Я тут нагло воспользовался > существованием внутреннего флага, который по факту используется для > webdav-модуля, и "вытащил" его в конфигурацию, потому патч и такой > простой. Если уж делать по-человечески - то делать нормальную > конфигурацию по аналогии с

Re: client_body_temp_path - permissions

2017-06-02 Thread S.A.N
> Т.е. директиву client_body_in_file_only и переменную > $request_body_file добавили, а > прав на файлы - добавить забыли. Да, в интернете многие задаются вопросом почему сделано это так, похоже что просто забыли учитывать client_body_in_file_only. Posted at Nginx Forum:

Re: client_body_temp_path - permissions

2017-06-02 Thread S.A.N
Я уточню чтобы меня понимали. Мы используем директиву - client_body_in_file_only clean; для получения файлов от клиента при аплодинге, указываем директорию в директиве client_body_temp_path, все работает хорошо, только пермишены файлов в этой папке 0600. Posted at Nginx Forum:

Re: client_body_temp_path - permissions

2017-06-02 Thread S.A.N
> Это временный файл процесса nginx, и, насколько я понимаю, никакая > обработка в > других процессах не предусматривается. В силу этого же права > выставлены в 0600 и > другого быть не может. Временный файлы процесса Nginx, создаются без директивы client_body_temp_path. Вот директива

Re: client_body_temp_path - permissions

2017-06-02 Thread S.A.N
Konstantin Baryshnikov Wrote: --- > > > > On May 31, 2017, at 12:35 AM, S.A.N <nginx-fo...@forum.nginx.org> > wrote: > > > > Я конечно извиняюсь, за настойчивость, но неужели пермишен 0600, на > файл > &

Re: client_body_temp_path - permissions

2017-05-30 Thread S.A.N
Я конечно извиняюсь, за настойчивость, но неужели пермишен 0600, на файл который должен быть обработан в другом процессе, это нормально и это никак нельзя настроить в конфиге Nginx? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,274059,274538#msg-274538

Re: Следование по редиректам вместо ответа браузеру.

2017-05-21 Thread S.A.N
> В первом сообщении указана ссылка на php-скрипт, где и используется > x-accel-redirect. Задача: сделать, чтобы nginx, приняв url, ещё и > переходил по редиректам, а не завершал обработку при получении первого > редиректа. Nginx, браузеру заголовок X-Accel-Redirect никогда не отдает, т.е.

Re: Следование по редиректам вместо ответа браузеру.

2017-05-20 Thread S.A.N
> В идеале - хотелось бы решения чисто на nginx. x-accel-redirect https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/#x-accel-redirect Posted at Nginx Forum: https://forum.nginx.org/read.php?21,274346,274349#msg-274349 ___ nginx-ru

Re: fastcgi cache background update ssi подзапросов

2017-05-10 Thread S.A.N
Офтоп - мы делаем по другому, части контента загружаем аяксом на клиенте и строим страницу на клиенте, есть и сервер рендер, который по сути является агрегатором, РНР делает НТТР запросы к другим РНР скриптам, те отдают JSON, и собираем страницу на сервере и отдаем готовый НТМЛ, в плане

Re: Best practices - url versioning static cache

2017-05-09 Thread S.A.N
> Но это требует rewrite директив, в конфиге Nginx, мне это не очень > нравится. Можно без rewrite директив, просто alias location ~ ^/[0-9]+/(.+)$ { alias /var/www/dir/$1; } Posted at Nginx Forum: https://forum.nginx.org/read.php?21,272099,274108#msg-274108

Re: Unix domain socket and restart

2017-05-07 Thread S.A.N
Michael Salmon Wrote: --- > I started testing using a Unix domain socket so that I could a way to > send a message when my site was down for maintenance but I ran into a > problem. When I restarted nginx it complained that the sockets already >

Re: try files - принудительно "перейти" к следующему варианту

2017-05-03 Thread S.A.N
Дмитрий Герасимов Wrote: --- > Вообщем всем спасибо. Сегодня узнал о существовании incron (век живи, > век учись), при помощи онного и решил проблему Есть аналог API в systemd https://www.freedesktop.org/software/systemd/man/systemd.path.html

client_body_temp_path - permissions

2017-05-03 Thread S.A.N
Здравствуйте. Сейчас файлы создаются с правами 0600 нужно хотя бы 0660, в документации нашел только настройку прав для store proxy_store_access user:rw group:rw all:r; Есть аналогичная настройка для client_body_temp_path? Posted at Nginx Forum:

Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)

2017-04-17 Thread S.A.N
Возможно по этой же причине Nginx иногда не удалял файлы, по директиве client_body_in_file_only clean; client_body_temp_path - на локал файл системе Наверно, в момент получения QUIT сигнала, процес Nginx завершался и файлы не удалялись. Posted at Nginx Forum:

Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)

2017-04-17 Thread S.A.N
Maxim Dounin Wrote: > Но в целом идея, что для остановки nginx'а системными скриптами > надо использовать QUIT - она, скажем так, странная. Да, странно зачем в дистрибутиве от Nginx, в файле nginx.service указан QUIT сигнал ExecStop=/bin/kill -s QUIT $MAINPID Если удалить эту строчку, Systemd

listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)

2017-04-17 Thread S.A.N
Может я что-то не так делаю, в конфиге указываю: server { listen unix:/var/run/www/test.sock; } Nginx создает файл сокета при старте, но после перезагрузки systemctl restart nginx, файл не удаляется и Nginx не может к нему забиндится, в логе выдает ошибку [emerg] bind() to

Re: Cache TTL = 0

2017-03-30 Thread S.A.N
Проще всего сделать как в Amazon CloudFront, если бекенд отдал Cache-Control: max-age=0, кешировать эти ответы, если в заголовках ответа есть валидаторы ETag или Last-Modified. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273298,273299#msg-273299

Cache TTL = 0

2017-03-30 Thread S.A.N
Здравствуйте. Я уже когда-то писал, что некоторые запросы бекенды должны всегда ревалидировать, в спецификации это документировано в трех параметрах заголовка Cache-Control. max-age=0 - кешировать если есть валидатор (ETag или Last-Modified) no-cache - не использовать кеш без ревалидации

Re: nginx-1.11.10

2017-02-16 Thread S.A.N
> 2) и что, всю толпу заголовков перечислять в ignore, если вдруг > хочется чтобы > всё происходило ровно так, как описано в конфиге? :) Нет, достаточно указать ignore Cache-Control и бекенд не сможет рулить кешированием, но вообще заголовки от бекенда, появляются не от сырости, их там

Re: nginx-1.11.10

2017-02-14 Thread S.A.N
За поддержку заголовков stale-* отдельное спасибо. Когда появится в документации описания новой директивы - proxy_cache_background_update? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,272411,272413#msg-272413 ___ nginx-ru mailing list

Re: Cache: Invalidation After Updates or Deletions (RFC 2616)

2017-02-13 Thread S.A.N
Илья Шипицин Wrote: --- > 13 февраля 2017 г., 18:01 пользователь S.A.N > <nginx-fo...@forum.nginx.org> > написал: > > > Здравствуйте. > > > > Есть потребность в реализации вот такого поведения: > >

Cache: Invalidation After Updates or Deletions (RFC 2616)

2017-02-13 Thread S.A.N
Здравствуйте. Есть потребность в реализации вот такого поведения: https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html Some HTTP methods MUST cause a cache to invalidate an entity. This is either the entity referred to by the Request-URI, or by the Location or Content-Location headers (if

Re: Cache-Control: immutable

2017-01-29 Thread S.A.N
> К сожалению, это все равно не панацея > Firefox почему-то смотрит на этот параметр только для https > соединений, а для якобы устаревших http игнорирует его.. Хотя казалось > бы зачем это вообще разделять... У вас юзера часто руками обновляют страницу, или это делает js, если js, тогда вместо

Re: Cache-Control: immutable

2017-01-29 Thread S.A.N
> Да, поставь ты expires и max-age хоть на сто лет вперед, любое F5 у > Firefox вызовет запрос на сервер. Да, в ответ пойдет 304, но сам > запрос то никак не отменить (кроме как этим флагом) Да, я уже понял и написал ниже: +1 за Cache-Control: immutable На сегодня immutable реализован только в

Re: Cache-Control: immutable

2017-01-29 Thread S.A.N
> вот тут подробности: > > http://www.opennet.ru/opennews/art.shtml?num=45934 > 27.01.2017 23:49 Firefox и Chrome провели работу по увеличению > скорости > повторной загрузки страниц Спасибо, да метод POST и поведение кнопки "перезагрузить страницу", вызывает условный запрос. +1, за

Re: Cache-Control: immutable

2017-01-29 Thread S.A.N
Почитал спеку, но так и не понял, что нового дает immutable, если установить expires max, клиент раз в год будет делать условный запрос, если установить immutable, клиент никогда не будет делать условных запросов, т.е. это все ради того чтобы клиент не делал запрос раз в год? Posted at Nginx

Re: Best practices - url versioning static cache

2017-01-22 Thread S.A.N
Anton Bessonov Wrote: --- > А что, если перенести это на уровень бильд-процесса? Успешно использую > с > мэйвеном (подсчёт версии, копирование файлов в /static/${number} и > замена переменных в ресурсаx), вэбджар и ocLazyLoad. > > На уровне

Re: патч для отключения заголовков "Connection: keep-alive" (еще раз)

2016-12-19 Thread S.A.N
Одно из достоинств HTTP 2, там Nginx (пока что) не добавляет заголовок Connection: keep-alive. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,245378,271652#msg-271652 ___ nginx-ru mailing list nginx-ru@nginx.org

Re: nginx socket fastcgi_params

2016-12-16 Thread S.A.N
> GEOIP-* - обязательно. remote_user особо не важен. Дело в том, что $remote_user не может открыть соединения по локальному unix-сокету из другого города или страны. У вас наверно есть внешний прокси для этого, если да, тогда все эти параметры должен передать внешний прокси (например в НТТР

Re: proxy_store - HTTP headers

2016-12-13 Thread S.A.N
> Что, впрочем, не мешает автору треда взять прокси-модуль, немного > изменить код > и радоваться жизни :) Нет, все таки придется юзать proxy_cache :) Posted at Nginx Forum: https://forum.nginx.org/read.php?21,271460,271464#msg-271464 ___ nginx-ru

proxy_store - HTTP headers

2016-12-13 Thread S.A.N
Здравствуйте. Есть ли возможность в proxy_store сохранять не только тело ответа, но и все НТТР заговоки? Для нашей задачи proxy_store подходит на 99%, не хватает только сохранения заголовков, использовать proxy_cache нельзя, потому что нам нужно чтобы имена кеш файлов соответствовали uri, это

Re: Возможно баг? Отказывается кешировать для одного из нескольких server name

2016-11-20 Thread S.A.N
Nginx, таким образом, за Сloudflare. > И если обращаться к серверу напрямую по имени domain.ltd, то кэш > успешно создается. Если же обычным путем (через Cloudflare), то при > обращении именно на определенный домен кэш не создается. С чем это > может быть связано? Возможно Cloudflare не

Re: настройка systemd в centos 7

2016-10-24 Thread S.A.N
Мне ещё не нравится, из официального репозитория, вот эта директива: [Service] PrivateTmp=true Огромный подводный камень, например вот это из коробки работать не будет client_body_temp_path /tmp/; client_body_in_file_only on; Потому что PrivateTmp=true, процес бекенда как правило работает под

Re: Странные текст и ключи в cache nginx

2016-09-09 Thread S.A.N
Kira_Belka Wrote: --- > чем тогда является данный текст?! > Он не является ни заголовком ни каким либо параметром передаваемым в > POST/GET > > там первая строчка с посыпавшейся кодировкой и это не кажется > валидным. > ??Wo > KEY:

Re: client_body_in_file_only

2016-08-05 Thread S.A.N
Проявилась одна фича (или баг?) В официальном Nginx репозитории для CentOS 7, в Systemd юните - nginx.services, указанна директива PrivateTmp = yes https://www.freedesktop.org/software/systemd/man/systemd.exec.html#PrivateTmp= Если в конфиге Nginx, указать client_body_temp_path/tmp;

Re: client_body_in_file_only

2016-08-03 Thread S.A.N
Maxim Dounin Wrote: --- > Самбу/NFS? Боюсь, что если так, то на этом > пути вас ждёт множество неприятных открытий. > Да, вы правы, на dev сервере Самба/NFS, проблема именно в этом. Спасибо! Posted at Nginx Forum:

Re: client_body_in_file_only

2016-08-02 Thread S.A.N
Ещё вопросы по временным файлам 1. Если клиент закрыл соединения до отправки всего тела запроса, временный файл остается в папке, Nginx этот файл не удаляет, запрос на бекенд отправлен не будет. Я так понимаю подразумевалось что ОС должна чистить папку temp, но может лучше чтобы Nginx сам за

Re: время ответа

2016-07-18 Thread S.A.N
> tcp_nodelay и tcp_nopush включал - эффекта никакого. Может это быть > из-за > айпитеблсов? Из-за какогонибудь коннтрека или еще чего Если есть возможность, попробуйте перейти на локальные UNIX сокеты. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,268323,268343#msg-268343

Re: когда лучше использовать multi accept on

2016-06-10 Thread S.A.N
> Я не понимаю что мы выигрываем от принятия сразу нескольких > соединений за одну итерацию event loop'а. Я в таких случаях провожу нагрузочные эксперименты, чтобы понять что мы выигрываем, в данном случаи разница будет на уровне погрешности, но возможно вам стоит попробовать чтобы знать точно.

Re: Есть ли смысл использовать что-то кроме http/1.1, при соединении с бэкэндом?

2016-06-04 Thread S.A.N
> Можете расшифровать выражение "сокет не простаивал в пустую"? Чем > грозит > сокет, который простаивает впустую? Что по вашему такой сокет > потребляет: > ресурсы процессора, электричество, солярку, деньги? Сокет который простаивает в пустую (ждет ответа на запрос) потребляет память

Re: Есть ли смысл использовать что-то кроме http/1.1, при соединении с бэкэндом?

2016-06-03 Thread S.A.N
> Везде SSL. Сейчас с SPDY (еще пока используем nginx-1.8.1). Возможно > SPDY\http2 > лишний и стоит его отключить везде, кроме связки клиент->эдж? Для видеостриминга, лучше использовать много соединений, HTPP/1.1 хорошо подходит и ничего более ненужно. Мультиплексирования, полезно там где

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-30 Thread S.A.N
> Возможно, эффективным решением для соединения бэкэндов было бы > фиксированное количество соединений, бесконечный keepalive и > pipelining Да, мы сделали свой pool keepalive сокетов, это действительно помогает. pipelining мы хотели сделать, но Nginx его не поддерживает, мы гоняем запросы между

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-30 Thread S.A.N
> Если сокет "простаивает без трафика", то железо отнюдь не простаивает, > а выполняет работу по тем сокетам, которые не простаивают. > > К тому же при однородной нагрузке количество требуемых содинений с > бэкэндами должно быть стабильно во времени Если 30 запросов отправить в 30 разных

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-30 Thread S.A.N
> Интересно, сколько нужно открыть fd чтобы ощутить их дефицит в > системе? Это зависит от установленого лимита в ОС, по умолчанию 1024, я кстати всегда хотел узнать, зачем линукс по умолчанию ставит такой низкий лимит? > Если у клиента такая логика, что он делает 30 запросов json >

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-27 Thread S.A.N
Илья Шипицин Wrote: --- > а как вы понимаете, простаивают они или нет ? Очень просто, мы на бекенде замеряли сколько соединений открывает Nginx, днем 200-300, ночью намного меньше, мы установили 250, по таймауту закрываются лишние. Кстати когда

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-27 Thread S.A.N
> > Кстати почему по дефолту keepalive_requests имеет такое маленькое > значения - > > 100? > > Это опция относится только к клиентскому соединению. Наши бекенды открывают клиентские соединения к другим нашим бекендам, по этому пришлось значительно увеличить keepalive_requests. Я хотел узнать,

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-27 Thread S.A.N
> зачем огромные ? > > значение keepalive - это "запас", соединения, которые держатся > подгретыми > на всякий случай. > если у вас нагрузка носит однородный характер, то они будут > простаивать У нас 250 keepalive на upstream, начинали с 8, потом имперически увеличивали, обычно они не

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-26 Thread S.A.N
Илья Шипицин Wrote: --- > а вы настройте keepalive между nginx и бекендами. Да, этим и спасаемся, у нас огромные значения keepalive в upstream :) Posted at Nginx Forum: https://forum.nginx.org/read.php?21,266693,267180#msg-267180

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-26 Thread S.A.N
> Конечно, мультиплексирование в FastCGI будет легче чем в HTTP/2. > > Но само по себе мультиплексирование не является самоцелью, оно может > быть уместно в каких-то вычурных ситуациях (вроде исчерпания > сокетов), > которые на самом деле разруливаются другими методами. Подскажите где

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-24 Thread S.A.N
> > Nginx никогда не посылает запрос в то же соединение, пока не > получит > > ответ > > и соединение освободиться. Т.н. pipelining он не умеет и не > > использует. > > > > Если бы следующий запрос пришел до того, как на первый был получен > > ответ, > > то он бы был отправлен на бекенд в другом

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-24 Thread S.A.N
> Вы просто перенесете то, что реализовано в ядре операционной системы > внутрь приложения. В случае HTTP/2 у вас будет на каждый отдельный > запрос свой внутренний идентификатор со своими накладными расходами, > который точно также будет "простаивать" пока запрос обрабатывается. > > У вас уже

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-10 Thread S.A.N
> Откуда такая арифметика? Цифры условные - допустим многопоточный бекенд, имеет 10 потоков, каждый поток может работать со скоростью 1к RPS. Задача получить от одного бекенда 10к RPS На НТТР1.1 нужно как минимум открыть 10 конектов, тогда бекенду очень просто привязать каждый конект к своему

Re: proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-10 Thread S.A.N
> Также как и h2 внутри датацентра не нужен. Это протокол заточенный > под общение > браузера с веб-сервером ради экономии на TLS-хэндшейках по сетям с > относительно > высокой задержкой и в условиях крайне ограниченного количества > параллельных > соединений. > > Не стоит забивать микроскопы

proxy http version 2; без SSL, для мультиплексирование запросов к бекенду

2016-05-07 Thread S.A.N
Наш бекенд работает на HTTP/1.1 в режиме Keep-Alive, но в пикоквые нагрузки, нам приходится держать много открытых конектов. Демон асинхронный, но если один запрос выполняется дольше обычного конект параллельно использовать для других запросов уже не выйдет он просто ждет, хотелось бы попробовать

Re: ревалидация кеша fastcgi

2016-05-04 Thread S.A.N
VovansystemS Wrote: --- > >> fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match > if_not_empty; > >> fastcgi_param HTTP_IF_MODIFIED_SINCE $http_if_modified_since > if_not_empty; > > > > У вас в конфиге написано: установить заголовки

Re: ревалидация кеша fastcgi

2016-05-04 Thread S.A.N
Судя по конфигу, у вас проблема с куками, если браузер присылает куки сессии, кеш не работает, curl куки не присылает, ответ отдается из кеша. Убери из конфига fastcgi_param HTTP_IF_NONE_MATCH $http_if_none_match if_not_empty; fastcgi_param HTTP_IF_MODIFIED_SINCE $http_if_modified_since

Reuse cache Nginx, for any microservices

2016-04-29 Thread S.A.N
Здравствуйте. Мы все больше используем микросервисы, они имеют уникальные uri, выполняют атомарные операции и отдают JSON ответы, их проксирует и кеширует Nginx. В этих бекенд микросервисах, часто появляются задачи для решения которых нужны ответы от других бекенд микросервисов, приходится

Re: Slice cache

2016-04-19 Thread S.A.N
Maxim Dounin Wrote: --- > Hello! > > On Tue, Apr 19, 2016 at 03:24:37AM -0400, S.A.N wrote: > > > > По умолчанию range-запросы из кеша работают только в том случае, > > > если в ответе бекенда был заголов

Re: Slice cache

2016-04-19 Thread S.A.N
> По умолчанию range-запросы из кеша работают только в том случае, > если в ответе бекенда был заголовок Accept-Ranges и должна быть > явно указана длина ответа. Супер, спасибо, отдали Accept-Ranges все работает. Кстати есть ли смысл бекенду сжимать (gzip) свой ответ, если клиенты запрашивают

Slice cache

2016-04-18 Thread S.A.N
Здравствуйте. Я хотел бы узнать, Nginx умеет отдавать клиентам из своего кеша, ответы частями? Корректный заголовок Range: bytes... клиент отправляет, но Nginx из кеша отдает весь ответ статус - 200, вместо частичного ответа со статусом 206. По сути нужен функционал обратный модулю Slice. Наш

Re: Acept systemd.socket

2016-03-19 Thread S.A.N
> И более правильным, потому что независимо от чей-то любви к > systemd.socket > в данном случае он поставленную задачу НЕ решает. Всяко лучше > устранить > проблему полностью, чем уменьшить её вероятность на несколько > процентов. systemd.socket задачу решает, тесты показали что он заметно

Re: Acept systemd.socket

2016-03-19 Thread S.A.N
Валентин Бартенев Wrote: --- > Это довольно странное желание - чтобы машина, которая по сути ещё не > готова > к работе, частично делала вид, что она готова принимать трафик. Что > вы будете > делать если nginx так и не заработает через 700 мс,

  1   2   3   >