perf(app-framework): Make app middleware registration even lazier#36298
Merged
ChristophWurst merged 1 commit intomasterfrom Jan 25, 2023
Merged
Conversation
This was referenced Jan 23, 2023
come-nc
reviewed
Jan 24, 2023
Member
|
I was scared this would break global middlewares, turns out
:D |
nickvergessen
added a commit
to nextcloud/spreed
that referenced
this pull request
Jan 25, 2023
Signed-off-by: Joas Schilling <coding@schilljs.com>
Member
|
Since talk is using middleware, I triggered a CI run at nextcloud/spreed#8598 so we can see it in action |
Member
|
CS is failing |
nickvergessen
approved these changes
Jan 25, 2023
f2f4e6e to
4033249
Compare
Before this patch, app middlewares were registered on the dispatcher for every app loaded in a Nextcloud process. With the patch, only middlewares belonging to the same app of a dispatcher instance are loaded. Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
4033249 to
907ff68
Compare
Member
|
Integration tests of talk passed as well https://drone.nextcloud.com/nextcloud/spreed/11370 |
Member
Author
|
Summary job is stuck, but
@skjnldsv, circa 2023-01-25T16:35:32Z |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Before this patch, app middlewares were registered on the DI container of each app loaded in a Nextcloud process. With the patch the registration is moved to a later point. Only middlewares of the created dispatcher will be loaded.
This allows me to work on a new middleware feature: #36310
Benchmarks
Blackfire and wall time measurements show no improvements. After all we are just moving around class names. That stuff is fast.
Checklist