设计注意事项 - C ++服务器开发

时间:2012-02-10 17:00:48

标签: c++

我想将我的Web应用程序原型(PHP服务器端)转换为C ++解决方案。这已经决定了。 我一直在维基百科,谷歌和SO上,以确定最好的方法。

我已经决定使用Linux和Apache(或自定义服务器)。

我认为我所学到的是,这可以通过多种方式完成。按照你将获得的速度或效率。

  1. 编写服务器
  2. 编写Apache模块
  3. 将其写为使用Fast CGI
  4. 将其写为使用CGI
  5. 我有大约1400行PHP,所以我的网络应用程序很小。我也知道网络中的CS课程通常让学生编写一个基本的Web服务器作为实验室。快速CGI声称比CGI更快,顾名思义......我听说模块速度最快,因为它与Apache有更紧密的集成。编写自己的服务器可能是最快的,因为它是特定于应用程序而不是所有目的。

    我正在尝试整理一个项目,我可以在一年内完成,并将代码库保持在6000行左右。

    合理的最快方法是什么?

    相关SO帖子

    C ++ Web库

    类似SO

4 个答案:

答案 0 :(得分:2)

我没有足够的权限对​​某个问题发表评论,因此请将我的评论作为答案。

考虑到你已经在php中构建了原型,如果你担心php的运行时性能,请使用hiphop for php!部署时。用c / c ++开发apache模块有一个非常陡峭的学习曲线。

答案 1 :(得分:2)

我从nginx上的FastCGI处理程序开始 - 它非常快,CGI是一个非常稳定的API。编写自己的服务器可能是一个很好的学习经验,但我不确定你是否能够使它像nginx或Apache一样高效。

答案 2 :(得分:1)

我强烈建议您使用CppCMS

  1. FastCGI支持(而不仅限于FastCGI)
  2. 首先是为性能而设计的。
  3. 网站开发所需的所有工具。
  4. 该技术已经proven作为高性能技术,已经在众多网站上使用。
  5. 披露:我是CppCMS的作者

    小笔记:

      

    编写服务器

    为什么有很多优秀的网络服务器可以很好地完成这项工作。

      

    编写Apache模块

    您与特定技术联系在一起

      

    将其写为使用Fast CGI

    这是最好的方法,因为它独立于Web服务器并且设计用于运行 用户应用程序。

      

    将其写为使用CGI

    CGI适用于很少执行的小任务。不适用于高性能应用。


    注意:Web开发是一项非常复杂的任务,因此使用框架可以帮助您进行操作 你的业务逻辑,而不是处理小细节

答案 3 :(得分:-1)

我必须同意其中一位评论者。 C ++可能不是最佳选择,您应该使用Opa或类似语言更快地完成工作。