Назад | Перейти на главную страницу

Какое решение для хостинга является наиболее эффективным для запуска нескольких веб-сайтов Pyramid (Python)?

Раньше я писал веб-сайты на двух языках. PHP для небольших сайтов и Python для крупных сайтов. С такой настройкой я бы запустил несколько экземпляров Paster для обслуживания каждого сайта на другом порту, а затем использовал бы nginx для прокси-сервера Paster. Это сработало нормально.

Однако я больше не хочу использовать PHP для небольших сайтов. Я хочу использовать Python. Это означает, например, что на сервере может работать более ~ 50 веб-сайтов. На данный момент кажется глупым запускать 50 экземпляров Paster на 50 разных портах.

Какая здесь лучшая альтернатива?

Ура.

Вы должны дать uWSGI попытка. Мы используем на наших серверах с nginx с участием virtualenv, и IMHO - один из лучших способов развертывания приложений WSGI. Поначалу немного страшновато настраивать (много вариантов), но это очень мощный сервер приложений.

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

Пастер - это просто сервер WSGI, а вам нужен другой сервер, который обходит это ограничение. Грэма Дамплтона mod_wsgi это отличный (и, насколько мне известно, единственный) сервер WSGI, который работает через Apache, что означает, что вы можете использовать свои обычные методы для размещения веб-сайтов. Настройка очень проста, и на сайте есть пример для настройка пилонов, духовной наследницей которой является Пирамида.

В худшем случае список рассылки - это кладезь информации, и вы можете очень быстро ожидать ответов на свои вопросы.

Надеюсь, это приведет вас на верный путь!