SuperAPI AI 工具集

nginx-c-modules

编程与开发

查看项目

更新于 10-16 03:46

技能介绍

用途:该技能为编写、审查或重构 nginx C 模块提供开发规范,来源于 nginx 官方开发文档与社区经验,包含 8 类共 49 条规则,按影响优先级排列。适用对象包括 handler、filter、upstream 和负载均衡模块的开发者。

主要能力:规则分为八个优先类别——内存管理(CRITICAL,前缀 mem-)、请求生命周期(CRITICAL,req-)、配置系统(HIGH,conf-)、Handler 开发(HIGH,handler-)、过滤器链(MEDIUM-HIGH,filter-)、Upstream 与代理(MEDIUM,upstream-)、事件循环与并发(MEDIUM,event-)、数据结构与字符串(LOW-MEDIUM,ds-)。关键要点包括:优先使用 pool 分配而非堆 malloc、检查每次分配返回值、使用 ngx_pcalloc 初始化结构、为外部资源注册 pool 清理处理器、避免依赖 ngx_pfree;请求必须恰好 finalize 一次且之后不可再访问、异步读取请求体、通过 post-subrequest 处理器处理完成;配置字段用 UNSET 常量初始化、合并所有字段、命令数组以 ngx_null_command 结束;输出前先发送 header、在最终缓冲区设置 last_buf、用 content_handler 生成响应;过滤器中保存并替换链顶、始终调用下一个过滤器;upstream 中增量解析响应头、在 free 回调记录失败、在 finalize_request 清理资源;事件处理器中禁止阻塞调用、删除定时器后再释放关联数据;不可假设 ngx_str_t 以 null 结尾、ngx_string 宏仅用于字符串字面量、哈希表仅在配置阶段构建。

使用方式:技能内提供分类定义与规则模板,可阅读各参考文件获取详解与代码示例。参考文件包括 references/_sections.md(类别定义与排序)和 assets/templates/_template.md(新规则模板),metadata.json 提供版本与引用信息。

适用场景:开发新 nginx C 模块、实现配置指令与合并逻辑、管理 nginx pool 与共享内存、处理 HTTP 请求生命周期、使用事件循环、定时器与线程池时参考。

限制:资料未提供具体安装命令或调用命令,也未说明收费、价格或平台支持情况,均暂未提供。