redis_helper.py 2.0 KB

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