-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
[TT-13939] Embed memorycache, drop leakybucket import #6843
[TT-13939] Embed memorycache, drop leakybucket import #6843
Conversation
a6fa99d
to
576bccd
Compare
1 similar comment
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
API Changes no api changes detected |
Quality Gate passedIssues Measures |
User description
TT-13919
Leakybucket repo last change was 8 years ago. Due to a goroutine leak in memory cache, it was better to clean it up a bit and embed it into the gateway, so we can archive that repository. It amounts mostly to a test fix, as the leak impacts test runs and benchmarks.
https://tyktech.atlassian.net/browse/TT-13919
PR Type
Bug fix, Enhancement, Tests
Description
Embedded
memorycache
package into the gateway, replacingleakybucket
.Introduced a new in-memory cache system with auto-expiry.
Added thread-safe bucket storage and cache management.
Removed outdated
leakybucket
dependency from the project.Changes walkthrough 📝
6 files
Replace
leakybucket
with embeddedmemorycache
in session managementAdd bucket implementation for in-memory rate limiting
Introduce thread-safe in-memory cache with auto-expiry
Implement cache item with expiration handling
Add in-memory bucket storage for rate limiting
Define bucket interface and error handling for rate limiting
1 files
Add basic test for cache shutdown functionality
1 files
Add documentation for internal data model package
2 files
Remove `leakybucket` dependency from module
Update dependencies to reflect removal of `leakybucket`