为了方便看到效果,我们编写补全服务端代码。
注意:此处实际推荐的代码在后续推荐系统课程中会涉及到
在toutiao-backend/common/rpc目录下新建server.py文件
import reco_pb2_grpc
import reco_pb2
import time
import grpc
from concurrent.futures import ThreadPoolExecutor
# 首先补全被调用的函数代码
class UserRecommendServicer(reco_pb2_grpc.UserRecommendServicer):
def user_recommend(self, request, context):
"""
在接口中定义的用户推荐方法
request:调用时的请求参数对象 UserRequest
context: 通过此对象可以设置调用返回的异常
"""
#获取请求参数
user_id=request.user_id;
channel_id=request.channel_id
article_num=request.article_num
time_stamp=request.time_stamp
#决定调用的返回数据
resp=reco_pb2.ArticleResponse()
resp.exposure='exposure param'
resp.time_stamp=round(time.time()*1000)
# 注意对于列表类型的赋值使用extend
_recommends=[]
for i in