mod_python

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая 88.84.200.2 (обсуждение) в 07:43, 25 августа 2009 (Преимущества). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

mod_python — модуль веб-сервера Apache, который встраивает в него интерпретатор языка Python. Mod_python позволяет добиться более высокой скорости выполнения веб-приложений на этом языке, чем при использовании CGI. В настоящее время проект по факту заброшен[1]

Преимущества

Обычно, при запуске CGI-скрипта для каждого соединения создается отдельный процесс, что приводит к проблемам с производительностью при высоких нагрузках. Существуют способы оптимизации работы CGI, например FastCGI, который позволяет не запускать процесс при каждом обращении к серверу, а передает запросы уже запущенному процессу. Однако, часто проще бывает встроить в web-сервер модуль для нужного языка программирования. Одним из таких модулей и является mod_python: благодаря ему не тратятся системные ресурсы на запуск и удаление процессов. После интеграции mod_python, скрипты использующие его могут делать почти то же самое, что и модули python, написанные на языке C: реализовывать протоколы помимо HTTP, фильтровать запросы к серверу и ответы на них, а так же опеределять тип содержимого документов.

Недостатки

Встраивание Python программ в apache так же имеет свои недостатки:

  • Все приложения запускаются под одним uid/gid, что понижает безопасность, особенно в контексте одного сервера для нескольких клиентов.
  • Необходимость перезагружать web-сервер Apache (требует привелегий суперпользователя, что вызывает проблемы в случае общего хостинга для нескольких пользователей.) в случае обнаружения сбоев в коде python-скриптов, а так же при их изменении.
  • Отсутствие официальной поддержки новых версий Python (после 2.5).
  • Низкое быстродействие по сравнению с mod_wsgi[2] (другой реализацией интеграции Apache и python)

См. также

Примечания

  1. Официальный SVN.Последние изменения в код были внесены более года назад.
  2. Резултаты тестирования производительности

Ссылки