веб-приложение Python регистрируется через канал? (касается производительности) - PullRequest
0 голосов
/ 03 декабря 2009

Я пишу веб-приложение, использующее python с web.py, и хочу реализовать свою собственную систему ведения журналов. Я хотел бы регистрировать подробную информацию о каждом запросе, поступающем в python (статические файлы обрабатываются веб-серверами).

В настоящее время я думаю о записи логов в трубу. С другой стороны, должен быть хронолог.

Моя главная проблема в том, что производительность будет хорошей? Каким образом время / ресурсы расходуются на передачу журналов по сравнению с обычной обработкой запроса (менее 5 запросов к базе данных и генерацией страницы из шаблонов)?

Или есть другие лучшие подходы? Я не хочу писать файл журнала на python, потому что fastcgi запустит десятки процессов.

1 Ответ

1 голос
/ 03 декабря 2009

Трубы - один из самых быстрых доступных механизмов ввода / вывода. Это просто общий буфер. Ничего более. Если приемный конец вашей трубы полностью перегружен, у вас может быть проблема. Но у вас нет доказательств этого прямо сейчас.

Если у вас есть 10 процессов, запущенных FastCGI, у каждого из них может быть свой независимый файл журнала. Это идеальная ситуация: используйте ведение журнала Python - сделайте так, чтобы у каждого процесса был уникальный файл журнала.

В редких случаях, когда вам нужно проверить все файлы журналов, объедините их для анализа.

...