用于后端c++进程的FastCGI或HTTP
FastCGI or HTTP for backend C++ processes
我计划构建一堆基于c++的进程,以在前端提供数据作为HTTP rest api。我一直在试图决定是否在HTTP服务器中构建或在c++进程中使用FastCGI更好。在任何一种情况下,进程都将在某些web服务器(如nginx)后面。对我来说,FastCGI似乎更简单,更容易使用,而不是拥有一个完整的HTTP服务器。FastCGI看起来也很快,但这并不重要。我认为,如果c++进程内置了HTTP,只需直接连接到它以供内部使用,测试就会更容易,但我还没有找到一个我喜欢的简单的c++ HTTP服务器库。
不要考虑编写自己的HTTP服务器,除非您有非常明确和合理的需要这样做(这里似乎不是这种情况)。如果你不想使用库或者你对这样的实现有特殊的需求,可以使用FastCGI甚至SCGI,这是一个比FastCGI更简单的协议。
我发现libevent内置了一个简单的http服务器。我一直在用它,很开心。我使用Qt,不得不做一点工作,把一个包装围绕libevent在一个线程,但它工作得很好,非常简单。
G-wan webserver,一个200 KB的可执行文件,让你编写ANSI C脚本,编辑和执行在飞行(比fastCGI更方便:所有的HTTP工作是透明地完成)。
你也可以使用"#pragma link"将任何C/c++库链接到G-WAN C脚本。
祝你项目顺利!
相关文章:
- 如何在boost beast http请求中设置http头
- 在多个核心中处理一个HTTP请求
- SFML library: http request
- 使用 Winsock2.h C++向不和谐 API 发送 HTTP 请求时出现问题
- 通过单独的 tcp 流建立 http 连接
- 使用 winsock 接收 http 请求
- 如何在 c++ 中通过 http 发送大型视频文件?
- 对于 http 请求,python 比 c++ 快吗?
- 使用 c++ 的 http 客户端的默认方法
- 如何使用C++和Boost Asio从HTTP发布请求中获取键值
- 如何使用boost/beast从HTTP POST请求中解析和提取有效负载?
- 如何重用 http::beast::flat_buffer 和 http::response?
- 在客户端和备忘录中获取 HTTP 命令
- 在C ++ ASIO中,如何为HTTP或HTTPS创建相同的套接字对象(接口/抽象问题?
- HTTP 响应格式不正确?
- 在 C++/C 中使用 CURL 发出带有数据文件的 GET HTTP 请求
- #include of a HTTP URL in C++
- PHP7 和 IIS8 HTTP 错误 500.0 - FastCGI 进程意外退出
- 用于后端c++进程的FastCGI或HTTP
- 如何用FastCGI应用程序扩展c++ HTTP服务器