Сайтостроительство


         

Обзор языков программирования, как средств разработки CGI-программ - часть 2


Вполне нормальным является трафик в 1-2Гб, а в один и тот же момент времени на сервере может находится 20-50 человек, что можно определить по числу запущенных копий Apache. Анализируя все вышесказанное, делаем выводы:

  1. CGI-программа должна выполняться максимально быстро, чтобы не загружать процессор. Помните, сайтов несколько сотен, на каждом сайте несколько CGI-программ. Все они имеют равный приоритет и равное количество процессорного времени.
  2. Средство разработки должно позволять интегрироваться CGI-программе со внешней средой, получать доступ к переменным окружения, соединяться с базами данных, соединяться с другими серверами по сети и т.п..
  3. В один и тот же момент времени может быть запущено несколько экземпляров одной и той же CGI-программы, поэтому средство разработки должно иметь возможность межпроцессорного взаимодействия.
  4. Важным фактором является переносимость, которая может быть от версии к версии операционной системы и сопутствующего ПО, например MySQL. Переносимость между клонами ОС FreeBSD Linux. Переносимость на принципиально другую платформу Unix Windows.

На основании перечисленных требований составим сравнительную таблицу характеристик для различных средств разработки.

Средство разработки 1 2 3 4
Си + + + -+
С++ -+ + + -+
MS VisualС + + + -
Delphi -+ + + -
Java - - - +
Unix Shell - + - -
Perl - + + +
PHP - + - +
ASP - + - -

И мы получаем интересную картину, что наиболее подходящим средством для разработки CGI-приложений, являются чистый Си и Perl: причем, Си на первом месте. Авторы многих книг по языку Perl упорно твердят, вторя друг другу, что Perl, именно Perl и только Perl, является самым подходящим средством для разработки программной составляющей веб-сайта. Такого рода авторы - технические писатели, вероятно, не наблюдали, как один perl'овый форум может загружать до 60% ресурсов сервера. Теперь представьте еще раз ситуацию, что у вас сотня сайтов. Меньше никак нельзя, просто нерентабельно - зарплата системного администратора, оплата канала Интернет, затраты на амортизацию оборудования. Если на нескольких сайтах одновременно начнется активность в форумах, то сервер загнется.

Сам я являюсь сторонником языка Си, считая все остальные языки менее пригодными для разработки CGI-программ. Это мнение, конечно, спорное. Есть программисты, которые считают, что вообще все нужно писать на ассемблере или в машинных кодах. Это одна крайность. Другие предпочитают объектно-ориентированный подход и признают только Delphi или С++. Это другая крайность. Выбор инструмента для разработки должен определяться постановкой задачи. При разработке больших информационных систем иногда имеет смысл использовать несколько языков программирования. Так, например, при разработке информационного портала Inforg (http://inforg.ru) мы применяли: MS Visual C++ для разработки офлайновой части программного обеспечения, Си для разр.аботки демона для FreeBSD и CGI-программ, Perl - для обработки документов.

В данном параграфе дан небольшой обзор и авторский взгляд на инструменты разработки веб-сайтов. Популярность Perl или PHP так велика, что можно оспаривать правомерность их использования, но не умалчивать о них. Данная книга ставит задачей освятить общие методы и технологии разработки веб-сайтов. Рассмотреть применение технологий со всеми инструментальными средствами не представляется возможным. Если вы захотите изучить какой-либо язык, то в конце книги есть список литературы и ссылки на Интернет-ресурсы.




Содержание  Назад