Django – Как измерить использование полосы пропускания для статического контента?

Я понимаю, что это больше вопрос сервера (поскольку все медиа-запросы обходят Django через NGINX), но я хочу знать, как это делают другие разработчики Django, больше, чем я хочу понять только особенности того, как это сделать в НГИНКС. Меня не волнует пропускная способность запросов HTML-страниц через Django; только пропускная способность статических медиафайлов. Используют ли те из вас Django и его БД для этого, или вы используете для этого методы, специфичные для веб-сервера? В последнем случае я направлюсь к ServerFault.

Я хочу сделать это, чтобы я мог измерить использование полосы пропускания для каждого субдомена (или аналогичного метода).


person orokusaki    schedule 09.09.2010    source источник
comment
Кэширование не вариант? Или ты уже это делаешь?   -  person Andrew Sledge    schedule 09.09.2010
comment
@ Андрей, я не понимаю. Как кэширование поможет мне измерить использование полосы пропускания и зачем мне кэшировать статические файлы?   -  person orokusaki    schedule 09.09.2010
comment
Мои извинения: я пропустил последнее предложение. Насколько я знаю, инструмента измерения нет, по крайней мере, в объекте HTTPResponse.   -  person Andrew Sledge    schedule 09.09.2010
comment
@ Эндрю - Чтобы получить это, я могу просто измерить len(response) и выяснить, сколько это байтов. Меня больше интересует измерение пропускной способности статических файлов. Я знаю, что это, вероятно, не произойдет изнутри Django, но мне любопытно, как это делают другие разработчики Django.   -  person orokusaki    schedule 09.09.2010


Ответы (1)


Извините за подход, отличный от django, но поскольку мы говорим о статических файлах, которые в хорошей практике передаются, даже не затрагивая wsgi или что-то еще.

В журналах доступа Apache есть размер запроса, поэтому вы можете извлечь свои медиафайлы и каталоги (cat access_log|grep "/images/\|/media/thumbs/\|jpg) и проанализируйте/суммируйте это число с помощью regexp и/или awk. Вот пример записи в журнале доступа (45101 — это размер файла):

10.0.0.123 - - [09/Sep/2010:13:30:05 -0400] "GET /media/images/mypic.jpg HTTP/1.1" 200 45101 "http://10.0.0.123/myapp" "Mozilla/5.0 (Windows; U; Windows
NT 5.1; en-US; rv:1.9.1.11) Gecko/20100701 Firefox/3.5.11"

Это должно вас завести..

person dsomnus    schedule 09.09.2010