Всем привет. Есть задача: каждого определённого пользователя всегда отправлять на определённую ноду. Пытаюсь решить её с помощью балансировки, через директиву upstream + hash.
Задаю каждому пользователю уникальный id, передаю его в запросе и потом nginx делает из него hash и в соответствии с ним отправляет запрос на определённую ноду. Но не все запросы равномерно распределяются по нодам. Например: у меня 5 нод, отправляю 4 запроса с одним id, они приходят на 1 ноду, отправляю следующие 4 запроса c новым id, они приходят на 2 ноду, отправляю следующие 4 запроса c новым id, они приходят на 3 ноду, повторяю те же действия с новыми id, но на ноду 4 и 5 ничего не приходит, запросы распределяются между 1, 2 и 3. Подскажите пожалуйста: Как происходит выбор ноды, когда upstream + hash? Как решают подобные задачи? Может вообще по другому? Если nginx вычислил hash от id и отправил на ноду n, то он всегда будет отправлять с тем же id на ноду n?(если список нод не менялся) Posted at Nginx Forum: http://forum.nginx.org/read.php?21,260591,260591#msg-260591 _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
