«Динамим» свой сайт

Автор статьи: Дмитрий Турецкий

>

 

"Динамим" свой сайт

[советы по созданию динамического сайта]
материал подготовил: Дмитрий Турецкий
16.04.2003
 

Необходимое вступление: ни в коей мере не хочу сказать, что являюсь (или считаю себя) "гуру" в области администрирования сервера, настройки баз данных и т.п. Просто, возясь со своим сайтом вот уже более семи лет и пройдя практически все этапы от сделанной на коленке и вручную обновляемой домашней странички до собственного сервера с динамическим сайтом, накопилось много заметок о всевозможных "граблях" по которым я уже прошел (а также некое видение тех граблей, к которым еще только приближаюсь)... И я подумал, что кому-то эти заметки могут оказаться полезны. Стоит учесть и то, что эта заметка ни в коей мере не является всеобъемлющей - большинство из затрагиваемых тем заслуживают не абзацев, а книг...

итак, начнем. Первый вопрос, который возникает сразу после появления идеи создать динамический сайт - это выбор платформы, СУБД, веб-сервера и языка программирования.

По поводу платформы и сервера я придерживаюсь традиционного мнения, что ничего лучше сочетания freeBSD + Apache еще не придумали. Не буду ни на чем настаивать и вступать в дискуссии - я заранее согласен с мнениями, что у меня просто руки кривые и я не могу грамотно настроить NT + IIS (я действительно не очень много возился с подобным сочетанием), но все мои (да и не только мои) эксперименты показали, что BSD и Apache намного устойчивее и производительнее. Линукс тоже неплох, но по мнению админов, использующих его под большой нагрузкой, - там требуется очень тщательная настройка (сам я веб-сервер на Линуксе никогда не поднимал, если не считать маленького сервера для тестирования интранет-сайта, но там нагрузка была почти нулевая). С другими версиями UNIX я вообще никогда не сталкивался, так что ничего умного не скажу.

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

Выбор СУБД - штука очень ответственная. Миграция баз данных занятие весьма неприятное и требующее кучи усилий и знаний, так что этому вопросу (выбору, а не миграции) стоит посвятить побольше времени. Разумеется, основным критерием тут является ваш программист - какую систему он знает лучше, ту и стоит использовать. Хотя стоит учитывать и объективные параметры...

Увы, специалистом в базах данных я тоже не являюсь. Знаю, что для больших промышленных систем обычно используют Oracle, но никогда с ним не работал. А для сайтов "младшего и среднего класса" наиболее популярными являются MySQL и PostgreSQL. Вопрос о преимуществах этих баз друг перед другом в Сети встречается очень часто, поэтому попробую кратко высказать свое мнение (опять же не претендующее на объективность и полноту).

Обе базы сравнительно просты в установке и настройке, но у Postgres'а настроек побольше и, соответственно, для его "доведения до ума" потребуется больше усилий. Хотя на относительно небольших сайтах и та и другая СУБД будут без проблем работать с настройками по умолчанию. У PostgreSQL больше "продвинутых" функций, которые сильно облегчают жизнь, например, JOIN, VIEW и т.п. MySQL очень хорошо и быстро работает с простыми выборками (SELECT), но значительно быстрее "ложится" если в таблицу часто что-то пишется: при записи блокируется вся таблица, а не одна строка, как в Postgres'е. Устойчивость обоих СУБД примерно одинакова (хотя, пожалуй, PostgreSQL лучше восстанавливается при возникновении проблем, но если уж он не смог восстановиться, то проблемы теперь у вас!). Недостатком Postgres'а можно считать сравнительно большое время, которое он тратит на установление соединения с клиентом, но при использовании persistent connections (т.е. подключений, которые не закрываются при окончании работы скрипта) этот недостаток исчезает.

В целом обе СУБД активно двигаются навстречу друг другу - Postgres увеличивает производительность (что весьма заметно при выходе новых версий), а MySQL добавляет функциональности, стараясь п

Алексей Волков

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

Нет комментариев!

Пока нет комментариев, но вы можете стать первым, кто прокомментировал данный пост

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

Только зарегистрированные пользователи могут оставлять комментарии.