后端&引擎
2024-01-05 18:41:10 12 举报
后端和引擎是软件系统中的两个重要组成部分。后端主要负责处理业务逻辑,数据存储和管理,以及与其他系统的交互。它通常包括服务器端程序、数据库管理系统、API接口等组件。后端开发需要具备扎实的编程基础和良好的系统设计能力,以确保系统的稳定性和可扩展性。 引擎则是一种用于实现特定功能的模块或框架,它可以为应用程序提供底层支持,简化开发过程并提高开发效率。例如,搜索引擎引擎可以快速检索大量信息,游戏引擎可以方便地创建复杂的三维图形和物理效果。引擎的开发需要深入了解相关领域知识,以便更好地满足用户需求。
作者其他创作
大纲/内容
后端
NO
查询注销 拉黑信息
rec_client_info
YES
Yes
定时任务:服务启动时执行一次,然后每分钟请求lindrom查询自然流数据进行缓存
规则处理
查询置顶数据
实时计算召回+排序(包含了所有的策略)
数据是否达到分页数量?
是否是自然流点位
不等
资源位是否配置了无限流?
请求的时间参数转换为key
Recommend(推荐接口,后端调数据)
是否存在
兜底策略
去Redis里查用户对应的版本号
自然流点位,都从本地缓存查询自然流数据
个性化点位2:请求引擎服务查询个性化推荐数据
redis
lindorm
点位数据中过滤Feeds流数组已有数据(去重
redis bitmap
推荐已到底,返回不足量的分页数据或空数组
Feeds流数组压缩后缓存到Redis
1.rec_resource_list2.rec_block_config
引擎
结束
caffeine(内存缓存)(java内部缓存)
标记兜底
鉴权与请求类型判断
第N次分页请求
分页请求/刷新请求?
记录推荐日志SLS
个性化点位1:请求引擎服务查询个性化推荐数据
个性化点位n:请求引擎服务查询个性化推荐数据
生成token
用户信息version:0
用户是否有拉黑操作?
写入缓存
是否有置顶?
用户Feeds流缓存再次进行过滤
是否有
推荐的时从Redis里面拿
abs_rec_community_forum_post_rt_t
更新
更新缓存版本version=1
缓存处理后的结果(二级)根据规则,同步更新
数据完整
等,使用缓存数据
封装物料属性后放入Feeds流数组
返回数据
拉黑/注销/负向标签数量过滤
abs_rec_community_forum_post_label_proc_rt_t
查询拉黑物料(lindorm)
查询数据
过滤,去重排序
点位信息version:1
计算feeds流数据
查询拉黑操作的用户(redis存着拉黑用户的缓存)
客户端信息
1.资源位信息2.点位信息
数据不完整
实时服务
鉴权校验(API服务自带)
获取缓存(一级,T+1Days)召回排序结果
根据下标取Feeds流数组的分页数据
查询注销数据(redis)
开始
扩展后的Feeds流数据缓存到Redis
兜底标记
用户分组/对应策略
management服务
初始化
User version==Block verison
mysql
获取分页数据
是否还有分页数据
等于
按点位类型获取数据补足,有次数限制。超过限制进行强行补足(个性化点位如果请求引擎获取数据不够将用自然流强补
从缓存中获取一批自然流数据,与Feeds流缓存去重后合并
判断是否置顶先去Redis里面查资源位信息
被过滤的数据根据所属点位类型查补,有重试次数,超过次数进行强补。再存回Redis
是否存在最新注销数据或存在拉黑操作
itemidgrass valuepost time
ads_rec_cbp_rec_user_bocc_shield_group_rt_t
内存里面取置顶数据
优化性能,一旦用户走了兜底,后面都可以走兜底
置顶封装物料属性值,放入Feeds流数组
校验是否通过?(检验token是否有效)
从Redis查询用户Feeds流缓存进行负向文章过滤
公共线程池
遍历推荐点位
是否足够
用户分流:分离出自然流点位和个性化点位
Feeds流缓存及分批推荐
0 条评论
回复 删除
下一页