Skip to content

Design Proposal: #5981 Performance of Rewrite Middleware #68952

Description

@cdincer

Summary

Design proposal for #5981. Adding benchmarks for Rewrite Middleware project in aspnet/benchmarks.

Motivation and goals

  • Seeing how the increased number of Rewrite rules effects the performance.
  • Gauge how these effected by changes to Rewrite middleware in general.
  • Close 5981 it appears to be the oldest help-wanted labelled issue.

In scope

Using 5981 as a starting point. Single rule, thousand rules and ten thousand rules will be added from database.

Out of scope

None.

Risks / unknowns

None.

Examples

Because task is focused on benchmarking a feature rather than fixing a bug or adding a feature. Currently I can't add any examples to this section.

However I found a previous PR 2233 that have a familiar subject to 5981 . In the below draft PR, I tried to show what I kind of imagine doing if this design approval goes ahead.

Disclaimer: I read through the contributor guidelines, that's why I opened this Design Proposal in the first place. Without getting approval from the team, there is no point to writing code. I did the PR below because, it's much easier to demonstrate a point like this. So if it's something team can use, great. If they can't, it's completely fine.

2209

There are multiple things that won't be the same but done so I can just get something working.
Some of them are below.

1-Editing postgres-techempower docker file.
2-Using the same SQL script for postgres-techempower.
3-Using that docker container for the scenario.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-middlewareIncludes: URL rewrite, redirect, response cache/compression, session, and other general middlewaresdesign-proposalThis issue represents a design proposal for a different issue, linked in the descriptionperformance

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions