ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx proxy аутентификация



On 26.02.2014 18:18, denis wrote:
26.02.2014 18:07, Alex Belyansky пишет:
On 26.02.2014 17:41, denis wrote:
24.02.2014 15:55, komiller пишет:
Здравствуйте.

Прошу помочь, не давно перешел на нгинх и все бы прекрасно да только
проблемка одна. Nginx я использую для балансировки нагрузки между двумя
серверами,
при входе в сайт есть авторизация и соответсвенно каптча, так вот каптча все
время ругается что код не правильный хотя все правильно.
куки не синхронизированы, ip_hash - вариант. Но можно писать куки в nfs шару или общий memcached, проблема тоже будет неактуальна.


NFS - плохая затея! Уже пробовали. Даже при невысокой посещяемости, заметно притормаживает. Общий memcached это уже ближе к делу, но надо быть осторожным при использовании - http://habrahabr.ru/post/38261/
28 августа 2008 в 13:52
думаю, за 6 лет ситуация сильно поменялась. Плюс "или общий memcached" - нет проблем синхронизации. И какие проблемы там могут быть? человек открыл страницу, секунд 10 разгадывал-вводил капчу, отправил. Какие проблемы с блокировками? У каждого человека своя сессия. какие-то проблемы возможны, если это интернет-магазин, добавление товара в 1 клик, медленный канал, человек быстро кликает. И то, если обновляется его локальная кука и она уходит - проблем быть не должно, а вообще правильнее например писать в куку номер корзины, а клик - аякс-запрос, который пишет сразу в базу а не в куку.
а где ещё можно хранить сессии? :)

зы " каптча все время ругается что код не правильный" - не всё время, а принимает капчу только со 2-3 раза (хотя зависит от количества серверов). Тоже с таким сталкивались, но причина была быстро понята.

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ситуация в принципе такая же, но есть CAS в классе Memcached для PHP. Вероятно уже есть готовые реализации для сессиий с его использованием. В вашем случае никаких блокировок с угадыванием капчи наверное быть не должно. Если вы не используете каких-либо инкрементов внутри сессии, то memcached решит все ваши проблемы даже без использования CAS (ну т.е. сессия нужна по сути чтобы только авторизоваться). Если вы добавляете идентификаторы товаров в сессию, то тут уже возможны беды. Там в принципе в статье про это все и описано, правда для блокировок они используют свой механизм.

Сессии можно хранить где угодно если есть свой обработчик - redis, mongodb, да хоть в mysql, правда производительность будет хромать :)

На практике хранили только в memcached и redis - для нас этого было вполне достаточно.


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.