Home / Function/ Benchmark_Rewrite_Parallel() — fiber Function Reference

Benchmark_Rewrite_Parallel() — fiber Function Reference

Architecture documentation for the Benchmark_Rewrite_Parallel() function in rewrite_test.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  85fc6650_a9d3_34bd_349f_539a1187dba4["Benchmark_Rewrite_Parallel()"]
  f5365631_1ba8_5f21_5ff7_68fb70dbba7b["rewrite_test.go"]
  85fc6650_a9d3_34bd_349f_539a1187dba4 -->|defined in| f5365631_1ba8_5f21_5ff7_68fb70dbba7b
  style 85fc6650_a9d3_34bd_349f_539a1187dba4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

middleware/rewrite/rewrite_test.go lines 273–384

func Benchmark_Rewrite_Parallel(b *testing.B) {
	// Helper function to create a new Fiber app with rewrite middleware
	createApp := func(config Config) *fiber.App {
		app := fiber.New()
		app.Use(New(config))
		return app
	}

	// Parallel Benchmark: Rewrite with Next function always returns true
	b.Run("Next always true", func(b *testing.B) {
		app := createApp(Config{
			Next: func(fiber.Ctx) bool {
				return true
			},
			Rules: map[string]string{
				"/old": "/new",
			},
		})
		b.ReportAllocs()
		b.ResetTimer()

		b.RunParallel(func(pb *testing.PB) {
			reqCtx := &fasthttp.RequestCtx{}
			reqCtx.Request.SetRequestURI("/old")
			for pb.Next() {
				app.Handler()(reqCtx)
			}
		})
	})

	// Parallel Benchmark: Rewrite with Next function always returns false
	b.Run("Next always false", func(b *testing.B) {
		app := createApp(Config{
			Next: func(fiber.Ctx) bool {
				return false
			},
			Rules: map[string]string{
				"/old": "/new",
			},
		})
		b.ReportAllocs()
		b.ResetTimer()

		b.RunParallel(func(pb *testing.PB) {
			reqCtx := &fasthttp.RequestCtx{}
			reqCtx.Request.SetRequestURI("/old")
			for pb.Next() {
				app.Handler()(reqCtx)
			}
		})
	})

	// Parallel Benchmark: Rewrite with tokens
	b.Run("Rewrite with tokens", func(b *testing.B) {
		app := createApp(Config{
			Rules: map[string]string{
				"/users/*/orders/*": "/user/$1/order/$2",
			},
		})
		b.ReportAllocs()
		b.ResetTimer()

		b.RunParallel(func(pb *testing.PB) {
			reqCtx := &fasthttp.RequestCtx{}
			reqCtx.Request.SetRequestURI("/users/123/orders/456")
			for pb.Next() {
				app.Handler()(reqCtx)
			}
		})
	})

	// Parallel Benchmark: Non-matching request, handled by default route
	b.Run("NonMatch with default", func(b *testing.B) {
		app := createApp(Config{
			Rules: map[string]string{
				"/users/*/orders/*": "/user/$1/order/$2",
			},
		})
		app.Use(func(c fiber.Ctx) error {
			return c.SendStatus(fiber.StatusOK)
		})

Domain

Subdomains

Frequently Asked Questions

What does Benchmark_Rewrite_Parallel() do?
Benchmark_Rewrite_Parallel() is a function in the fiber codebase, defined in middleware/rewrite/rewrite_test.go.
Where is Benchmark_Rewrite_Parallel() defined?
Benchmark_Rewrite_Parallel() is defined in middleware/rewrite/rewrite_test.go at line 273.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free