新的 C++ 网页开发框架冲入 GitHub 热门榜

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

新的 C++ 网页开发框架人气飙升:功能概览



网页开发世界传统上与 Python、JavaScript 和 Go 相关联。然而近几个月来,一位意想不到的选手登上了舞台——一个名为 Drogon 的 C++ 语言新框架。该项目在 GitHub 上迅速获得星标,并吸引了那些厌倦了在高负载系统中使用缓慢解释型语言的开发者们的注意。



Drogon 是一个用现代 C++17/20 编写的异步、高性能网页框架。与许多解决方案不同,它不需要依赖 libcurl、OpenSSL 或 Boost.Asio——所有处理 HTTP/HTTPS、WebSocket 和数据库所需的功能都已内置于核心中。这使其成为微服务、API 网关和实时应用的理想选择。



为什么 Drogon 变得流行?

  • 速度。 基准测试显示,Drogon 在单核上每秒可处理多达 150 万次请求——这比大多数 Node.js 或 Python 框架快 10 倍。
  • 简单性。 开发者指出,Drogon 的语法类似于 Express.js 或 Flask,但拥有 C++ 的强大功能。只需编写几行代码即可创建 REST API。
  • 支持现代标准。 该框架积极利用 C++20 的特性:协程、ranges、std::format。这使得无需手动管理内存即可编写安全且可读的代码。
  • 生态系统。 Drogon 提供了用于 PostgreSQL、MySQL 和 SQLite 的 ORM、内置模板引擎(类似于 Jinja2)以及对 WebSocket 的支持。


Drogon 代码示例

以下是在 Drogon 上实现最小 REST API 的方式:

#include <drogon/drogon.h>using namespace drogon;

int main() { app().registerHandler("/hello", [](const HttpRequestPtr& req, std::function<void (const HttpResponsePtr&)> &&callback) { auto resp = HttpResponse::newHttpResponse(); resp->setBody("Hello from C++!"); callback(resp); }); app().addListener("0.0.0.0", 8080).run();}

编译后(使用一条 cmake 命令),您将获得一个大小约为 3 MB 的可执行文件,它立即启动,并且在启动时仅消耗 5-10 MB 的 RAM。



应用场景有哪些?

Drogon 已被 Netflix(用于内部微服务)、Cloudflare(用于边缘计算)以及一些金融科技初创公司等公司用于生产环境。主要场景包括:

  • 高负载 API(交易所、分析、物联网);
  • 实时聊天和数据流;
  • 在延迟至关重要的项目中替代 Node.js/Python;
  • 将网页服务器嵌入桌面应用程序(例如,用于本地管理)。


如何开始?

安装很简单:在 Ubuntu/Debian 上,只需执行 sudo apt install libdrogon-dev;在 macOS 上,执行 brew install drogon。对于 Windows,官方站点 drogon.org 提供了预编译的 .dll 文件和说明。



尽管 C++ 传统上被认为对网页开发来说很复杂,但 Drogon 正在改变这种看法。如果您

推荐库