IP rate limiting using a file cache