redis_helper.py 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import redis
  2. import os
  3. import sys
  4. sys.path.append(os.getcwd())
  5. class RedisHelper:
  6. @classmethod
  7. def connect_redis(cls, env):
  8. if env == 'hk':
  9. redis_pool = redis.ConnectionPool(
  10. # host='r-bp154bpw97gptefiqk.redis.rds.aliyuncs.com', # 内网地址
  11. # host='r-bp154bpw97gptefiqkpd.redis.rds.aliyuncs.com', # 测试地址
  12. host='r-bp1mb0v08fqi4hjffupd.redis.rds.aliyuncs.com', # 外网地址
  13. port=6379,
  14. db=2,
  15. password='Wqsd@2019'
  16. )
  17. redis_conn = redis.Redis(connection_pool=redis_pool)
  18. elif env == 'prod':
  19. redis_pool = redis.ConnectionPool(
  20. host='r-bp1mb0v08fqi4hjffu.redis.rds.aliyuncs.com', # 内网地址
  21. # host='r-bp1mb0v08fqi4hjffupd.redis.rds.aliyuncs.com', # 外网地址
  22. port=6379,
  23. db=2,
  24. password='Wqsd@2019'
  25. )
  26. redis_conn = redis.Redis(connection_pool=redis_pool)
  27. else:
  28. redis_pool = redis.ConnectionPool(
  29. # host='r-bp154bpw97gptefiqk.redis.rds.aliyuncs.com', # 内网地址
  30. host='r-bp154bpw97gptefiqkpd.redis.rds.aliyuncs.com', # 外网地址
  31. port=6379,
  32. db=2,
  33. password='Qingqu2019'
  34. )
  35. redis_conn = redis.Redis(connection_pool=redis_pool)
  36. return redis_conn
  37. @classmethod
  38. def redis_push(cls, env, task_key, data):
  39. redis_conn = cls.connect_redis(env)
  40. # print("开始写入数据")
  41. redis_conn.lpush(task_key, data)
  42. # print("数据写入完成")
  43. @classmethod
  44. def redis_pop(cls, env, task_key):
  45. redis_conn = cls.connect_redis(env)
  46. if redis_conn.llen(task_key) == 0:
  47. return None
  48. else:
  49. return redis_conn.rpop(task_key)