Commit a93c1c89 authored by 段英荣's avatar 段英荣

modify

parent e080bc4e
......@@ -27,6 +27,7 @@ def home_recommend(session_id="",user_id=-1,offset=0,size=10):
session_id = ""
redis_key = "physical:home_recommend" + ":user_id:" + str(user_id) + ":session_id:" + session_id
redis_val_dict = redis_client.hgetall(redis_key)
last_offset_num = redis_val_dict["last_offset_num"] if "last_offset_num" in redis_val_dict else -1
recommend_topic_ids = []
......@@ -35,9 +36,9 @@ def home_recommend(session_id="",user_id=-1,offset=0,size=10):
unread_topic_id_list = list()
have_read_topic_id_tuple = set()
if len(redis_val_dict)>0:
topic_id_list = json.loads(redis_val_dict[b"unread_topic_id"]) + topic_id_list
have_read_topic_id_tuple = set(json.loads(redis_val_dict[b"have_read_topic_id"]))
if len(redis_val_dict)>0 and offset>0 and user_id>0 and offset==(last_offset_num+1):
topic_id_list = redis_val_dict[b"unread_topic_id"] + topic_id_list
have_read_topic_id_tuple = set(redis_val_dict[b"have_read_topic_id"])
for item in topic_id_list:
if item["group_id"] in have_read_group_id_tuple:
unread_topic_id_list.append(item)
......@@ -59,7 +60,8 @@ def home_recommend(session_id="",user_id=-1,offset=0,size=10):
if len(unread_topic_id_list)>0:
redis_dict = {
"unread_topic_id":json.dumps(unread_topic_id_list),
"have_read_topic_id":json.dumps(list(have_read_topic_id_tuple))
"have_read_topic_id":json.dumps(list(have_read_topic_id_tuple)),
"last_offset_num":offset
}
redis_client.hmset(redis_key,redis_dict)
# 每个session key保存15分钟
......@@ -89,6 +91,7 @@ def home_query(session_id="",user_id=-1,query="",offset=0,size=10):
session_id = ""
redis_key = "physical:home_query" + ":user_id:" + str(user_id) + ":session_id:" + session_id
redis_val_dict = redis_client.hgetall(redis_key)
last_offset_num = redis_val_dict["last_offset_num"] if "last_offset_num" in redis_val_dict else -1
recommend_topic_ids = []
......@@ -97,7 +100,7 @@ def home_query(session_id="",user_id=-1,query="",offset=0,size=10):
unread_topic_id_list = list()
have_read_topic_id_tuple = set()
if len(redis_val_dict)>0:
if len(redis_val_dict)>0 and offset>0 and user_id>0 and offset==(last_offset_num+1):
topic_id_list = json.loads(redis_val_dict[b"unread_topic_id"]) + topic_id_list
have_read_topic_id_tuple = set(json.loads(redis_val_dict[b"have_read_topic_id"]))
for item in topic_id_list:
......@@ -121,7 +124,8 @@ def home_query(session_id="",user_id=-1,query="",offset=0,size=10):
if len(unread_topic_id_list)>0:
redis_dict = {
"unread_topic_id":json.dumps(unread_topic_id_list),
"have_read_topic_id":json.dumps(list(have_read_topic_id_tuple))
"have_read_topic_id":json.dumps(list(have_read_topic_id_tuple)),
"last_offset_num":offset
}
redis_client.hmset(redis_key,redis_dict)
# 每个session key保存15分钟
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment