Skip to content
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

🚀 Add MRU (Most Recently Used) Cache Algorithm to gofast #12

Open
raghavgh opened this issue Oct 22, 2024 · 2 comments
Open

🚀 Add MRU (Most Recently Used) Cache Algorithm to gofast #12

raghavgh opened this issue Oct 22, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@raghavgh
Copy link
Owner

We’re currently missing an MRU (Most Recently Used) cache algorithm in our gofast caching library. If you’re interested in contributing to this feature, this is an excellent opportunity to have your code running in a live, production-ready library!

What’s MRU?

The MRU algorithm discards the most recently used items first, opposite to how LRU (Least Recently Used) works. It’s useful in certain scenarios where recently accessed data is less likely to be accessed again, such as when processing a stack of documents.

Why Pick This Up?

  • You’ll write a full cache algorithm from scratch.
  • A great opportunity to see your algorithm implemented in the real world and used by developers.
  • Contributing to a growing Go project with multiple caching strategies.

What We Expect:

  • Implement the MRU algorithm with thread safety.
  • Ensure consistency with the rest of the library’s cache interface.
  • Write unit tests to verify the correctness and efficiency of your implementation.
  • Bonus: If you’re interested, add benchmarks to measure MRU performance compared to LRU and FIFO.

Get Started

  • Fork the repository: gofast
  • Check out the structure for existing cache implementations like LRU.
  • Submit a pull request when you’re done, and we’ll be happy to review it!

Looking for Guidance?

Feel free to open a discussion if you need any help. We’d be happy to mentor or guide you through this contribution.

@raghavgh raghavgh added enhancement New feature or request good first issue Good for newcomers labels Oct 22, 2024
@abuzaforfagun
Copy link

I am interested in working on the issue.

@raghavgh
Copy link
Owner Author

I am interested in working on the issue.

Assigned.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants