Cache-based rate-limiting for Django