现在是C ++ CGI

时间:2012-11-10 14:07:52

标签: 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(对比PHP)中,我们遇到了每个进程执行fork-exec的问题,这有点减慢了一切。
  • ^这就是FastCGI的用途
  • 对于一些常见的数学运算,C ++比PHP快200倍(因为PHP是一种解释语言)
  • 需要性能的大型网站不使用纯PHP(Facebook使用的是与C ++相关的HipHop,而且谷歌有几种关于用Perl,C ++,C或其他语言编写的传言,但PHP)
  • PHP学习和编写的速度更快
  • C ++有很糟糕的字符串操作方法
  • 有一些好的(主观的)C ++ CGI库,比如wT(诙谐)。
  • 有些人只是告诉我,尽可能远离PHP

真实问题

今天我必须决定使用PHP或CGI。我问你:

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

1 个答案:

答案 0 :(得分:5)

  1. 几乎只用于非常特殊的情况
  2. 不要构建一个用户:CppCMS *
  3. 是,C ++ Web框架
  4. 因为很久以前已经死了
  5. 它取代了CGI,使其非常高效
  6. 是 - 所有主要(和次要)Web​​服务器都支持它
  7. * Full-disclosure: I am the author