ThreeMammals / Ocelot

.NET API Gateway
https://www.nuget.org/packages/Ocelot
MIT License
8.28k stars 1.63k forks source link

Startup time benchmarking #1964

Open ks1990cn opened 6 months ago

ks1990cn commented 6 months ago

Fixes #1526

Adding benchmark for startup. We can replicate issue or verify with this PR

Unable to replicate application down with 600 dummy routes.

Proposed Changes

ks1990cn commented 6 months ago

3/4 comments are done which was mentioned in https://github.com/ThreeMammals/Ocelot/pull/1856

raman-m commented 6 months ago

@ks1990cn Tanmay, It seems you don't respect us as a team... I see that you do not appreciate our help and our efforts when we review your PRs... We are wasting time with you. You close PRs after receiving review issues. You have poor git knowledge and can't manage your branches.

You're basically ignoring our development process. You are kidding and joking... I'm tired of your contributions!

Please, enjoy your weekend!

@ggnaegi FYI

ks1990cn commented 6 months ago

@raman-m You pushed some changes as request and I merged to develop. Something went wrong with it, I was getting 4-5 unneccessary commits with my develop branch which I forked. I was unable to see changes same as your main branch.

I've transfered your all comments (Which are left) and reviews as it is in this, so you should not worry on it.

@ggnaegi

ks1990cn commented 6 months ago

// Detailed results HeavyRoutesStartupBenchmark.StartOcelotWithLargeConfigurations: DefaultJob Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation Mean = 3.210 s, StdErr = 0.013 s (0.41%), N = 14, StdDev = 0.050 s Min = 3.109 s, Q1 = 3.175 s, Median = 3.213 s, Q3 = 3.238 s, Max = 3.294 s IQR = 0.063 s, LowerFence = 3.079 s, UpperFence = 3.333 s ConfidenceInterval = [3.154 s; 3.266 s] (CI 99.9%), Margin = 0.056 s (1.75% of Mean) Skewness = -0.34, Kurtosis = 2.23, MValue = 2 -------------------- Histogram -------------------- [3.082 s ; 3.190 s) | @@@@ [3.190 s ; 3.313 s) | @@@@@@@@@@

HeavyRoutesStartupBenchmark.StartOcelotWithOverrideFile: DefaultJob Runtime = .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2; GC = Concurrent Workstation Mean = 3.232 s, StdErr = 0.016 s (0.51%), N = 42, StdDev = 0.107 s Min = 3.122 s, Q1 = 3.167 s, Median = 3.196 s, Q3 = 3.242 s, Max = 3.520 s IQR = 0.075 s, LowerFence = 3.054 s, UpperFence = 3.355 s ConfidenceInterval = [3.174 s; 3.291 s] (CI 99.9%), Margin = 0.058 s (1.81% of Mean) Skewness = 1.37, Kurtosis = 3.66, MValue = 2 -------------------- Histogram -------------------- [3.082 s ; 3.150 s) | @@@@@ [3.150 s ; 3.231 s) | @@@@@@@@@@@@@@@@@@@@@@@@@ [3.231 s ; 3.303 s) | @@@@@ [3.303 s ; 3.377 s) | [3.377 s ; 3.457 s) | @@@@@ [3.457 s ; 3.544 s) | @@

// Summary

BenchmarkDotNet v0.13.11, Windows 11 (10.0.22621.3155/22H2/2022Update/SunValley2) Intel Core i7-8650U CPU 1.90GHz (Kaby Lake R), 1 CPU, 8 logical and 4 physical cores .NET SDK 8.0.200-preview.23624.5 [Host] : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2 [AttachedDebugger] DefaultJob : .NET 6.0.25 (6.0.2523.51912), X64 RyuJIT AVX2

Method Mean Error StdDev StdErr Min Q1 Median Q3 Max Op/s Gen0 Gen1 Allocated
StartOcelotWithLargeConfigurations 3.210 s 0.0561 s 0.0497 s 0.0133 s 3.109 s 3.175 s 3.213 s 3.238 s 3.294 s 0.3115 178000.0000 17000.0000 728.68 MB
StartOcelotWithOverrideFile 3.232 s 0.0584 s 0.1068 s 0.0165 s 3.122 s 3.167 s 3.196 s 3.242 s 3.520 s 0.3094 179000.0000 17000.0000 729.78 MB
ks1990cn commented 6 months ago

@raman-m Should I continue on resolving comments you mentioned for this? Will you or anyone will be assigned again for review?🥺

raman-m commented 6 months ago

You are talented developer. But you don't follow Development process! Truly speaking, you cannot pass the stage of Code Review which is the 5th point of the process.

Will you follow the dev process? Are you sure? Will not you close your current PRs multiple times?

ks1990cn commented 6 months ago

Yes I will 🚫 not.. sure! I am sorry 😐

ks1990cn commented 6 months ago

@raman-m I don't know why this test case failing on build, its running perfect on local.

Any suggestions?