redis 版本 pip install redis==2.10.6
settings.py
CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379/1", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", } } }
middlewore.py
def process_request(self,request): ip=get_ip(request) # 获取ip add_ipredis(ip) # 添加集合
# 添加集合 和获取ip 函数
def get_ip(request): print(request,'555') if request.META.get('HTTP_X_FORWARDED_FOR'): ip = request.META.get("HTTP_X_FORWARDED_FOR") return ip else: ip = request.META.get("REMOTE_ADDR") return ip def add_ipredis(ip): count_set = get_redis_connection('default') count_set.zadd('onlines',ip,time.time()) # 存入有序集合 加入时间戳 # count_set.zadd("onlines",{ip:int(time.time())}) # 从当前时间前两个小时到当前时间前一个小时区间进行删除 count_set.zremrangebyscore('onlines',int(time.time())-7200,int(time.time())-3600 )