现在是C++ CGI

Sho*_*hoe 5 php c++ cgi fastcgi

http://www.atmel.com/Images/compiler.jpg

背景

我已经有5年的PHP背景了,在上个月我一直忙于找到一种用C++做网络的方法(即使我知道这是幼稚和愚蠢的,我觉得C++是唯一真正的编程语言而且我有这种对它的宗教信仰让我爱它而且只有它.

我的CGI之旅

我发现了几篇博客文章(主要是2000 - 2003年),讨论并在这里进行了一些聊天讨论.这就是我收集的内容:

  • PHP是为Web而设计的,而C++是一种通用的语言.
  • PHP不一致,并且在网络上有很多仇恨
  • PHP是最常见和支持的脚本语言
  • CGI是一种非常古老而通用的技术,在PHP之前使用过(PHP1实际上是C的CGI库)
  • 在CGI(vs PHP)中,我们fork-exec遇到了每个进程的执行问题,这有点减慢了一切
  • ^这就是FastCGI的用途
  • 对于一些常见的数学运算,C++比PHP快200倍(因为PHP是一种解释语言)
  • 需要性能的大型网站不使用纯PHP(Facebook使用HipHop,这是与C++相关的东西,在Google上有几个关于它用Perl,C++,C或其他语言编写的传言,但PHP)
  • PHP的学习和编写速度更快
  • C++有很糟糕的字符串操作方法
  • 有一些好的(主观)库用于C++ CGI,如wT(诙谐).
  • 有些人只是告诉我尽可能远离PHP

真实的问题

今天我必须决定使用PHP或CGI.而且我在问你:

  1. CGI在2013年死了吗?(是的,我知道之前有人问过)
  2. 既然每个人都需要性能,并且考虑到我有时间花1年时间为网络构建一个可靠的C++库,而且我不喜欢简单的事情,那么现在使用CGI(或FCGI)有什么缺点(相比之下)到较新的技术)
  3. 有没有更有效的方法来使用C++构建网站
  4. 与FastCGI有什么关系?
  5. FastCGI得到广泛支持吗?
  6. 考虑到我必须在单个网站/服务器/数据库周围构建Web工具,Web应用程序,iphone应用程序,PC应用程序和mac应用程序的项目,我是否可以将C++网站中的一些代码重用于我的应用程序?(例如数据库交互)?

Art*_*yom 5

  1. 几乎只用于非常具体的情况
  2. 不建立一个用途:CppCMS*
  3. 是的,C++ Web框架
  4. 因为很久以前就死了
  5. 它取代了CGI,使其非常高效
  6. 是 - 所有主要(和次要)Web​​服务器都支持它

* Full-disclosure: I am the author