我想使用 ANSI C 开发一个 Web 应用程序。因为,我希望应用程序比其他应用程序足够快,并且它应该支持普通脚本 php、python 或任何脚本语言提供的所有类型的操作。即使您对使用数据库而不是 C 进行最快的访问有想法,请推荐更好的东西
如果有人有想法,请分享教程以开始。
我想使用 ANSI C 开发一个 Web 应用程序。因为,我希望应用程序比其他应用程序足够快,并且它应该支持普通脚本 php、python 或任何脚本语言提供的所有类型的操作。即使您对使用数据库而不是 C 进行最快的访问有想法,请推荐更好的东西
如果有人有想法,请分享教程以开始。
我不知道任何 C Web 应用程序框架,因此如果您确实希望用 C 编写应用程序,您将需要通过 Web 服务器接口处理您的应用程序/框架和 Web 服务器之间的所有通信 - 最简单的起点为了理解这一点,可能需要阅读CGI,但是一旦你了解了 CGI 的工作原理,你就会想要继续理解FastCGI,因为尽管 FastCGI 更复杂,但 CGI 的速度却是出了名的慢。
但是,我强烈建议您不要打扰,除非您出于学术目的而尝试这样做!:
您建议的路径涉及低级别的东西 - 它很有趣,但是要实现在任何半体面的 Web 应用程序框架中可以非常容易地完成的事情需要做很多工作。
对于 Web 应用程序而言,重要的是吞吐量(在给定时间段内您可以处理的请求数),而不是速度(处理单个请求所需的时间)——看起来用 C 编写的网站会更快,但实际上 C 的执行速度与(例如)缓存和其他优化相比几乎没有什么影响。
其他已经过验证且速度极快的框架已经存在!
最终结果是,您想出的任何东西几乎肯定会比使用“慢速”脚本语言工作更多且速度更慢。
任何类型的“脚本”都不会为您提供您可能正在寻找的“原始速度”。
不过,我通常会强烈反对这整个思路。有很多 Web 框架,您可以在其中生成运行非常高效的代码。即使是“脚本化”的 Web 框架也经常缓存脚本并减少解析和执行所涉及的大部分初始减速。
使用编译后的字节码/IL 的框架在加载/JIT 后可以非常快。
但是,如果您打算用 C 编写自己的 HTTP 引擎;我怀疑在您非常熟悉已经存在的东西之前,您能否获得与其他任何东西一样快的东西。它们是如何工作的,所涉及的协议中的所有变化等等,等等......
我听说过很多关于FastCGI的好消息。也许你应该尝试一下?
您应该通过 trustleap 结帐 g-wan。它允许您在 ansi-c 中编写 servlet,处理有关 http 协议的所有细节。