-
Notifications
You must be signed in to change notification settings - Fork 0
Feat/rate limit write #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ravilock
wants to merge
18
commits into
main
Choose a base branch
from
feat/rate-limit-write
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
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
…request handling Co-authored-by: Ravi Menezes <[email protected]>
…res and error handling
…mproved logging and error management
Refactored ngx_http_limit_req_rw_module.c to modularize and clean up shared memory zone access. Introduced a helper function find_rate_limit_shm_zone_by_name to encapsulate the logic for locating rate limit zones by name, reducing code duplication and improving readability. Updated both read and write handlers to use this helper. Also improved logging and error handling for missing or invalid zones. Updated .gitignore to exclude .cache directory. Enhanced config script to detect both 'msgpack-c' and 'msgpack' pkg-config packages for better compatibility across platforms.
Refactored the rate limit entity update logic to: - Move zone lookup and locking outside the entity loop for efficiency. - Use direct key from message pack instead of converting to in_addr. - Replace memcmp with ngx_memn2cmp for key comparison in rbtree. - Fix entity array allocation and assignment. - Improve error handling and logging. - Remove redundant debug logs and streamline memory management. This improves performance, correctness, and maintainability of the rate limit state update handler.
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.
No description provided.