(来源:atmel.com)
背景
我有 5 年的 PHP 背景,上个月我一直在忙着寻找一种用 C++ 做 Web 的方法(即使我知道这是幼稚和愚蠢的,我觉得 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 使用与 C++ 相关的 HipHop,在 Google 上有几个关于它是用 Perl、C++、C 或除 PHP 之外的其他语言编写的谣言)
- PHP 学习和编写速度更快
- C++ 有非常糟糕的字符串操作方法
- 有一些很好的(主观的)C++ CGI 库,比如 wT(机智)。
- 有些人只是告诉我尽可能远离 PHP
真实问题
今天我必须决定使用 PHP 还是 CGI。我问你:
- CGI在2013年死了吗?(是的,我知道以前有人问过)
- 由于每个人都需要性能,并且考虑到我花了大约 1 年的时间为网络构建一个可靠的 C++ 库,而且我不喜欢简单的东西,现在使用 CGI(或 FCGI)有什么缺点(相比之下新技术)
- 有没有更有效的方法来用 C++ 构建网站
- FastCGI 的真正意义是什么?
- FastCGI 是否得到广泛支持?
- 考虑到我必须围绕单个网站/服务器/数据库构建 Web 工具、Web 应用程序、iphone 应用程序、pc 应用程序和 mac 应用程序的项目,我实际上可以为我的应用程序重用 C++ 网站中的一些代码吗?(例如数据库交互)?