C ++ Server-Side-Scripting - PullRequest
       31

C ++ Server-Side-Scripting

7 голосов
/ 18 апреля 2011

На этот раз я натолкнулся на множество вещей о том, что использование C ++ не рекомендуется для SSS и что я рекомендую использовать так называемые интерпретируемые языки, такие как PERL и PHP. Но мне нужны расширенные функции OO и гибкость C ++, чтобы обеспечить масштабируемый и более управляемый код.

Я перепробовал много статей и поисков в Интернете, и ни одна из них не была полезной, поскольку я до сих пор не представляю, можно ли писать SS-скрипты на C ++ и если да, то как.

Я подумал о паре идей, в том числе о написании веб-сервера на C ++ и ответе соответствующим образом после разбора HTTP-запроса. Но это было бы переизобретением колеса, и я в конечном итоге отошел от своего основного проекта и посвятил много работы для обеспечения функционально надежного HTTP-сервера.

Я также рассмотрел расширения PHP, но опять-таки этот подход также имеет свой собственный багаж и накладные расходы.

Мои вопросы:

  • Можно ли программировать SSS на C ++?
  • Если да, то каковы подходы в моем распоряжении.

Спасибо!

Ответы [ 6 ]

8 голосов
/ 18 апреля 2011

На данный момент, игнорируя целесообразность использования C ++ для SSS, ваш первый выбор, вероятно, будет Wt .Вопреки значениям в некоторых других ответах, время разработки не может увеличиться в 10 раз (или где-либо близко к нему).Нет, вы не упускаете все приятные инфраструктурные функции, которые можно ожидать в таких вещах, как PHP, Perl или Python.

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

Возвращаясь к вопросу о целесообразности: разработка на C ++ может быть немного более сложной, чем на некоторых языках, которые более распространены на рынке SSS, - но это все еще не так просто по сравнению с безопасностьюЧто ж.Если у кого-то есть хоть какие-то трудности с написанием C ++ (например, отслеживание и освобождение памяти, когда она больше не нужна), я определенно не хочу, чтобы они приближались к коду моего веб-сайта.

3 голосов
/ 18 апреля 2011

Я бы не советовал, но вы, безусловно, можете написать CGI-скрипты на C ++ (или на C, или на FORTRAN). Но зачем? Такие языки, как PHP, намного легче справляются с работой, и, похоже, они хорошо масштабируются для некоторых довольно крупных сайтов.

2 голосов
/ 18 апреля 2011

CGI - это «стандартный» способ заставить код на C или C ++ обрабатывать веб-запросы, но вы также можете изучить написание модуля, который будет связан с веб-сервером во время выполнения. Google для «API модуля Apache» (если используется Apache) или «Модуль IIS» (если используется IIS).

0 голосов
/ 18 апреля 2011

Я не мог понять ваши точные требования (лицензия и т. Д.), Но это может быть то, что вы ищете http://cppcms.sourceforge.net.

0 голосов
/ 18 апреля 2011

Вы можете написать CGI-приложение на C ++, используя соответствующий фреймворк (например, этот ).Но я бы порекомендовал просто пойти с Perl или PHP.Это сэкономит вам много времени.Эти инструменты просто лучше подходят для такой работы.

РЕДАКТИРОВАТЬ : исправлена ​​ссылка

0 голосов
/ 18 апреля 2011

Можете ли вы позволить себе в 10 раз больше времени на разработку?Все биты инфраструктуры, которые вы принимаете как должное в php, perl, python, не существуют или их гораздо сложнее использовать в C ++.Я вижу только две веские причины для этого: 1. У вас есть только C ++ на вашей платформе.2. Сервер действительно имеет очень высокие требования к производительности, которые выиграли бы от оптимизации конкретных проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...