da4qi4C++ Web Server 开发框架

联合创作 · 2023-09-20 03:11

da4qi4 是使用现代 C++ 语言的 Web Application Server 开发框架。


da4qi4 Web 框架优先使用成熟的、C/C++开源项目的搭建。其中:



  • HTTP 基础协议解析: Node.JS / http-parser, 纯 C 语言 nodejs/http-parser

  • HTTP multi-part : multipart-parsr multipart-parser-c

  • 网络异步框架: C++ boost.asio boostorg/asio (预计进入 C++ 标准库)

  • JSON : nlohmann-json JSON for Modern C++ (github 上搜索 JSON 出来的第一个)

  • 日志: splogs 一个高性能的 C++ 日志库 (微软公司将它绑定到 Node.JS)

  • 模板引擎: inja 是模板引擎 Jinja 的 C++ 实现版本,和 nlohmann-json 完美配合实现 C++ 内嵌的动态数据结构

  • Redis 客户端: 基于 nekipelov/redisclient,为以类 node.js 访问 redis 进行专门优化(实现单线程异步访问,去锁)。 ,da4qi4默认使用redis缓存session等信息,以优先支持负载均衡下的节点无状态横向扩展。

  • TLS/加密: OpenSSL

  • 静态文件服务: da4qi4 自身支持静态文件(包括前端缓存支持)。实际项目部署建议与 nginx 配合。由 nginx 提供更高性能、更安全的接入及提从静态文件服务。


示例代码:



#include "daqi/da4qi4.hpp"

using namespace da4qi4;

int main()
{
auto svc = Server::Supply(4098);

svc->AddHandler(_GET_, "/", [](Context ctx)
{
ctx->Res().ReplyOk("Hello World!");
ctx->Pass();
});

svc->Run();
}


 
浏览 24
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报