Hacker News new | ask | show | jobs
by toast0 894 days ago
Yahoo has (or had) a very similar 'cache' for tracking abuse (ydod). As I recall it was patented, but I can't find the patent to confirm it has expired.

Really handy for tracking potentially abusive ips, if your table is big enough; on a request, check if it's in the table - if so increase the count and if it's above the theshold mark it. If it's not in the list, decrement the current item and move current to the next item.

An agressive user will clear out a slot for itself, and rapidly hit the threshold. Other users will come and go. You can iterate through and try to always clear a spot for a new entry, but it might not be necessary, depending on what you're caching.