新增功能: - stream 模块: 流式传输支持,优化大文件和实时数据传输 - Goroutine 池: 限制并发数量,减少调度开销 - 优雅升级: 零停机热升级,继承父进程监听器 - sendfile: 零拷贝文件传输,大文件直接从内核传输 重构改进: - App 结构体封装,支持热升级和信号处理 - 配置结构字段对齐和代码清理 - 完善错误处理和日志记录 Co-Authored-By: Claude <noreply@anthropic.com>
49 lines
1.0 KiB
Go
49 lines
1.0 KiB
Go
package handler
|
|
|
|
import (
|
|
"github.com/fasthttp/router"
|
|
"github.com/valyala/fasthttp"
|
|
)
|
|
|
|
// Router 请求路由器
|
|
type Router struct {
|
|
router *router.Router
|
|
}
|
|
|
|
// NewRouter 创建路由器
|
|
func NewRouter() *Router {
|
|
return &Router{
|
|
router: router.New(),
|
|
}
|
|
}
|
|
|
|
// GET 注册 GET 路由
|
|
func (r *Router) GET(path string, handler fasthttp.RequestHandler) {
|
|
r.router.GET(path, handler)
|
|
}
|
|
|
|
// POST 注册 POST 路由
|
|
func (r *Router) POST(path string, handler fasthttp.RequestHandler) {
|
|
r.router.POST(path, handler)
|
|
}
|
|
|
|
// PUT 注册 PUT 路由
|
|
func (r *Router) PUT(path string, handler fasthttp.RequestHandler) {
|
|
r.router.PUT(path, handler)
|
|
}
|
|
|
|
// DELETE 注册 DELETE 路由
|
|
func (r *Router) DELETE(path string, handler fasthttp.RequestHandler) {
|
|
r.router.DELETE(path, handler)
|
|
}
|
|
|
|
// HEAD 注册 HEAD 路由
|
|
func (r *Router) HEAD(path string, handler fasthttp.RequestHandler) {
|
|
r.router.HEAD(path, handler)
|
|
}
|
|
|
|
// Handler 返回路由处理器
|
|
func (r *Router) Handler() fasthttp.RequestHandler {
|
|
return r.router.Handler
|
|
}
|