From 1eeab88c987b41e70ecbcf334c6217782e896a0c Mon Sep 17 00:00:00 2001 From: xfy Date: Thu, 4 Jun 2026 11:06:00 +0800 Subject: [PATCH] perf(server): pass ctx.Path() directly to Match, eliminate string alloc Removes the string(ctx.Path()) conversion that caused one heap allocation per request in the routing hot path. --- internal/server/server.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/internal/server/server.go b/internal/server/server.go index d95fd08..76ce40d 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -526,8 +526,7 @@ func (s *Server) startSingleMode() error { // 创建主请求处理器,使用 LocationEngine 匹配路由 locationEngine := s.locationEngine baseHandler := func(ctx *fasthttp.RequestCtx) { - path := string(ctx.Path()) - result := locationEngine.Match(path) + result := locationEngine.Match(ctx.Path()) if result != nil && result.Handler != nil { result.Handler(ctx) return