Hello! On Wed, Oct 03, 2018 at 01:23:46PM +0500, Илья Шипицин wrote:
> ср, 3 окт. 2018 г. в 12:11, Roman Arutyunyan <a...@nginx.com>: > > > On Wed, Oct 03, 2018 at 08:10:13AM +0300, Alexander Azarov wrote: > > > Здравствуйте! > > > > > > У меня вопрос про mirror. Он у меня срабатывает, только если в локейшне > > > есть proxy_pass. Если там rewrite..redirect или return, то подзапрос не > > > случается, в логе совсем пусто (даже в debug логе). Так и должно быть? > > Если > > > да, то может быть имеет смысл что-то в лог писать, а то нелогично как-то > > > получается, директива в конфиге есть, а действия никакого нет. > > > > Миррор создается в фазе precontent, а rewrite и return - на более ранней > > фазе > > rewrite. В вашем случае запрос завершается в фазе rewite и не доходит до > > фазы precontent, в которой создается mirror. Дело тут не в proxy_pass, а > > в rewrite/return. Если бы в локейшене просто отдавалась статика, то mirror > > бы также работал. Непонятно что можно в этом случае писать в лог, если > > запрос просто завершается на более ранней стадии. > > > > я наверное, неправильно поступлю. но у меня два вопроса )) > > 1) мы игрались с mirror - штука годная. но когда мы хотели ее подебажить, > мы добавили access_log, в него ничего не записалось. мы включили снифер - > запросы увидели. не совсем понятно, лог можно указать, с точки зрения nginx > директива access_log в локейшене миррора не является ошибкой. но не > логирует. надо доки читать. оченьсложна Mirror использует подзапросы, аналогично SSI и add_after_body. Подзапросы рассматриваются как часть основного запроса, и отдельно логгируются, только если это специально разрешить, http://nginx.org/r/log_subrequest. > 2) вот допустим, у меня точка, на которую я делаю зеркалирование - > тормозная. то соединения не устанавливаются, то запросы подтупливают... не > будет ли это приводить к деградации воркера ? Подзапрос mirror'а выполняются параллельно основному запросу. Однако если он не успеет завершиться к моменту окончания основного запроса - это завершение запроса задержит, и соответственно задержит последующие запросы в этом же соединении в случае постоянных соединений в HTTP/1.x. То есть плохо работающий mirror-бэкенд - может увеличивать latency. -- Maxim Dounin http://mdounin.ru/ _______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru