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.
Solves: #5
After resolving the performance limitation in 3.1.1, as reported here, we now aim to set up a more complex reactive stress scenario. This involves adding more observers, running multiple unblocked subscriptions across additional collections, and querying with dynamic parameters.
This level of stress testing will better reflect real-world conditions. It will help us verify whether the optimizations introduced in 3.1.1 (async queue and compression defaults) perform as expected under more complex scenarios, or if new regressions surface, requiring further adjustments.
New behaviors introduced in this PR will include:
Register users using accounts instead of relying on sessions
Task status and completion (to distribute updates on subscriptions)
Subtask addition and completion scoped by taskId (to trigger more subscriptions and observers)
Comments and subcomments scoped by taskId and commentId (to add another collection, use publish-composite, and increase observers)
Notifications per user action performed (to add another collection and core composed publish)
Summary of tasks/subtasks and comments/subcomments (to add more reactivity impact, use robfallows/tunguska-reactive-aggregate)
This is an opportunity to develop a dynamic performance suite designed to test community package libraries as well. It allows configurable parameters for reactive approaches used in benchmark tests, along with additional adjustments in the future.
Usage of redis-oplog, could also be interesting. But I left for additional efforts after initial complex setup.