Правильный способ использования Python в веб-разработке

Как правильно использовать серверный язык для создания веб-сайта? Должен ли я писать каждую веб-страницу на языке Python (печатать "" и т. Д.) Или я должен использовать серверную часть только тогда, когда я хочу получить доступ к базе данных, например, и чем форматировать вывод через javascript? Заранее спасибо!

2 ответа

Решение

При выборе того, что делать на стороне сервера, необходимо учитывать как минимум две вещи:

1. Безопасность: все, что вы отправляете на клиентскую сторону, будет доступно получателю в виде простого текста (также javascript). Отправляйте данные только тогда, когда вы уверены в идентичности клиента (т.е. вошли в систему). Поэтому все, что чувствительно к безопасности, должно происходить на стороне сервера.

2. Время обработки в зависимости от нагрузки на сеть: если многие пользователи выполняют множество различных вычислений с набором данных (например, сортировка, суммирование, подведение итогов и т. Д.), ЦП сервера может быть выгружен путем отправки необработанных данных (предоставляется pt. 1 позаботился), и пусть каждый клиент обрабатывает вычисления. С другой стороны, это может привести к тому, что многие пользователи будут запрашивать слишком много данных, что может снизить производительность сети.

Как следствие: если не уверены, делайте как можно больше на стороне сервера. Если не уверен, вопрос недействителен:-)

Что касается другой части вашего вопроса, касающейся того, как генерировать HTML: рассмотрите возможность использования веб-фреймворка, такого как Django. Это даст вам уровень абстракции, который дает большую функциональность pr. строка кода. Конечно, таким образом многое происходит "за кулисами", что дает вам меньше прямого контроля, но обычно преимущества перевешивают недостатки.

Есть несколько способов использовать Python в качестве веб-языка. Вы можете просто использовать его через интерфейс cgi или использовать более сложные фреймворки, такие как Django.

В этом решении нет ничего правильного или неправильного - просто мера, если она адекватна вашей проблеме.

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

Другие вопросы по тегам