Hello!

On Tue, Apr 17, 2018 at 08:29:13PM +0300, Kirill Safonov wrote:

> Добрый день,
> 
> Есть nginx и fastcgi upstream из нескольких десятков серверов, 
> используется consistent hash. Требуется, оставаясь в рамках 
> nginx, дополнительно отправлять по fastcgi часть трафика (3-5%) 
> на тестовые сервера (canary), ответы с них игнорировать. 
> Желательно с тем же hash, который работает в основном трафике.
> 
> С помощью модуля mirror можно отправить копию всего трафика на 
> другой локейшен, для которого можно объявить отдельный upstream, 
> в нем указать тестовые сервера. Но непонятно, куда с минимальным 
> overhead-ом отправить оставшиеся 95% трафика (ответы на который 
> всё равно игнорируются). Поднимать рядом fastcgi-бекенд 
> “пустышку” бы не хотелось.

Проще всего воспользоваться split_clients и для остальных клиентов 
сделать return 204.  Подробнее тут:

http://nginx.org/ru/docs/http/ngx_http_split_clients_module.html

-- 
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить