这个项目能做什么

CWIST(C Web开发仍然值得信赖)是一个C17 Web框架和应用服务器,捆绑了完整的网络栈:HTTP/1.1、HTTP/2、基于QUIC的HTTP/3、WebSocket、WebTransport,以及使用X25519MLKEM768的混合后量子TLS。它提供了嵌入式SQLite ORM、一个名为Nuke DB的内存只读优化数据库引擎,以及通过线协议指纹自动检测PostgreSQL、MySQL和MariaDB的功能。 该项目提供两种可通过环境变量选择的执行模型。C1M反应器模式在Linux上使用io_uring(带有epoll/kqueue回退)进行高并发事件驱动服务,而经典池模式则为每个连接分配自己的线程,以在典型请求工作负载下实现更低延迟。README中包含与Axum、Gin和Spring Boot的基准比较,涵盖吞吐量、延迟百分位数、内存使用和上下文切换,并注明结果取决于CI运行器的CPU和负载配置文件。 CWIST附带一个命令行工具,用于搭建项目、开发期间热重载、从Doxygen注释生成OpenAPI,以及protobuf/gRPC代码生成。它支持gRPC一元和流式路由、健康与反射服务、重试和负载均衡。该框架还包括带Express风格参数的路由、中间件、结构化日志、指标和健康端点、速率限制、HTML/CSS/模板渲染以及JSON实用工具。 安装可通过使用make从源码构建或通过Homebrew tap进行。BoringSSL、lsquic、libttak和SQLite3等依赖项已捆绑,静态库可直接链接或通过pkg-config链接。平台支持涵盖Linux、macOS和BSD。