Sobes.tech
Junior — Middle

Kunt u een voorbeeld geven van het gebruik van een tussenlaag om de verwerkingstijd van elk verzoek te schatten?

sobes.tech AI

Antwoord van AI

De tussenlaag (middleware) voor het beoordelen van de verwerkingstijd van een verzoek wordt vaak geïmplementeerd door het onderscheppen van de oproep en het meten van de tijd vóór en na de verwerking.

Voorbeeld in C# met ASP.NET Core middleware:

public class RequestTimingMiddleware
{
    private readonly RequestDelegate _next;

    public RequestTimingMiddleware(RequestDelegate next)
    {
        _next = next;
    }

    public async Task InvokeAsync(HttpContext context)
    {
        var stopwatch = Stopwatch.StartNew();

        await _next(context); // geeft controle door aan de volgende component

        stopwatch.Stop();
        var elapsedMs = stopwatch.ElapsedMilliseconds;

        Console.WriteLine($"Request [{context.Request.Method}] {context.Request.Path} duurde {elapsedMs} ms.");
    }
}

// In Startup.cs of Program.cs voeg je middleware toe:
// app.UseMiddleware<RequestTimingMiddleware>();

Deze tussenlaag meet de verwerkingstijd van elke HTTP-aanvraag en toont het resultaat in de console. Deze aanpak helpt bij het monitoren van de prestaties en het identificeren van knelpunten.