2 октября 2010 г.

Боевой сервер под Django

Предположим, вы написали мега-приложение с использованием Django. В процессе разработки вы, вероятнее всего, использовали встроенный сервер, запускаемый командой:

c:\> python manage.py runserver

Но вот приходит время для того, чтобы запустить ваш проект в Интернет.  Существует ряд виртуальных хостингов, которые предоставляют возможность запуска Python-приложений. Самые известные из них – Джино и Комтет.

Однако это не путь настоящего гика. Во-первых, каждый виртуальный хостинг имеет свои ограничения (например, предустановленная версия Django может отличаться от той, которую вы хотите использовать).

Путь настоящего веб-самурая – это, конечно, свой выделенный сервер. На крайний случай, можем обойтись и виртуальным сервером (VPS/VDS).

Единственным отчетливо видимым недостатком такого пути является, безусловно, цена. VPS, не говоря уже о выделенном сервере (дедике от англ. dedicated). Однако свободы, предоставляемые своим сервером, настолько широки, что стоят той разницы в цене, которая неизбежно возникнет.

Небольшая оговорка – если вы страшно далеки от администрирования Linux-систем и не желаете ничего про это знать, то все дальше написанное можно не читать. Воспользуйтесь каким-нибудь готовым решением.

Итак, каковы минимальные характеристики сервера для старта веб-приложения на Django? Зависит от двух вещей: настройки сервера и нагрузки на приложение (количество посещений ресурса).

Приведу более конкретный пример. Была разработана CRM, отслеживающая оборот неких объектов, являющихся основной продукцией компании. Поскольку никакого сервера у компании нет, как нет желания иметь персонал для его поддержки, решили вынести приложение на VDS.

Количество пользователей примерно трое, три-четыре доступа к ресурсу в день от каждого. Нагрузка, мягко говоря, небольшая, так что у меня был простор для экспериментов.

Я остановился на unmanaged VDS от VDSPlanet. Начал с самого дешевого тарифа, решив, что если будет необходимость, можно будет его повысить.

В следующий раз остановимся подробнее на наборе ПО, которое нам потребуется для запуска приложения.

Комментариев нет:

Отправить комментарий

Мне интересно ваше мнение.