Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Как трекать скачивание файлов (учитывать траффи к по аккаунтам) ?
Hello!
On Mon, Dec 27, 2010 at 06:35:18PM +0300, Dmitry Dedukhin wrote:
> 27.12.2010 18:28, Maxim Dounin пишет:
> >Hello!
> >
> >On Mon, Dec 27, 2010 at 05:13:46PM +0300, vitaly@xxxxxxxxxxx wrote:
> >
> >>Всех с наступающим!
> >>
> >>Хочется вести учет скачанных файлов/траффика по юзерам. Естественно, доступ
> >>к файлам у каждого юзера
> >>по персонализированным ссылкам. Как сейчас решаются похожие задачи в модных
> >>домах европы? Чтобы избежать
> >>ситуаций, когда юзер скачал килобайт огромного файла, потом плюнул, а ему
> >>все равно гиг насчитали.
> >>
> >>Возможно я отстал от жизни и хочу странного. Тогда буду признателен за более
> >>актуальные примеры.
> >tail -F /path/to/access.log | do_something_with_stats
> >
> >Но при этом не надо забывать, что все получаемые цифры -
> >приблизительные, как минимум с точностью до размера буферов на
> >отправку на вашей стороне.
>
> А через post_action это никак нельзя сделать?
> В смысле, можно ли в обработчике post_action узнать кол-во отданных байт?
Можно, но это плохая идея. Даже если забыть о том, что через
post_action оно будет тупо потреблять больше ресурсов.
У post_action есть приблизительно два существенных недостатка,
из-за которых я не рекомендую его использовать вообще:
1. Пока выполняется post_action - соответствующее соединение с
клиентом продолжает оставаться заблокированным. И если клиент
послал туда следующий запрос - этот запрос будет ждать, пока
закончится выполнение post_action.
2. Выполнение post_action - это система костылей и подпорок,
причём далёкая от стройности. И шансы, что после очередного
изменения оно перестанет работать (либо совсем, либо в каких-то
конкретных ситуациях) - достаточно высоки.
Maxim Dounin
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|