问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

积分系统设计

创作时间:
作者:
@小白创作中心

积分系统设计

引用
CSDN
1.
https://m.blog.csdn.net/2201_75725647/article/details/145040095

设计背景

在当今竞争激烈的互联网环境中,平台若想在市场中脱颖而出,提升用户粘性并推动交易增长是关键所在。而积分作为一种有效的运营工具,具有巨大的潜力。通过巧妙且合理地运用积分机制,能够深度激发用户的参与热情,使用户更加频繁且持久地活跃于平台之上,进而显著提高平台的用户粘性。同时,这一机制还能在潜移默化中影响用户的消费决策,有效促进平台内的各类交易活动,为平台的持续发展和繁荣注入源源不断的动力。

积分获取规则

获取途径:

  • 签到规则:

  • 签到1天给1分

  • 连续签到7天额外奖励10分

  • 连续签到14天额外奖励10分

  • 连续签到28天额外奖励40分

  • 每月签到进度当月第一天重置

  • 学习规则:

  • 每学习一小节课积分+10,每天上限50分

  • 交互规则 (有效交互数据参与积分规则,无效数据会被删除) :

  • 写评论,积分+10 每日获取上限为50分

  • 写问答,积分+5 每日获取上限为20分

  • 写笔记,积分+3,每次被采集+2 每日获取上限为20分

数据表设计

积分表要记录的信息应该有:本次得到的积分值、积分获取方式、获取积分时间、及获取积分的人

积分表

字段名
说明
id
积分记录表id
user_id
用户id
type
积分方式:1-课程学习,2-每日签到,3-课程问答,4-课程笔记,5-课程评价
points
积分值
create_time
创建时间

模块设计

新增积分

需求分析:
用户签到、学习、参与互动问答、提交学习笔记等行为都可以产生积分,并基于积分形成排行榜。积分当月有效,月底清零。
由积分规则可知,获取积分的行为多种多样,而且每一种行为都有自己的独立业务。而这些行为产生的时候需要保存一条积分明细到数据库。我们显然不能要求其它业务的开发者在开发时帮我们新增一条积分记录,这样会导致原有业务与积分业务耦合。因此必须采用异步方式,将原有业务与积分业务解耦。如果有必要,甚至可以将积分业务抽离,作为独立微服务。
要实现服务之间的解耦,可以使用MQ,实现流程如下:

产生积分向MQ中发送消息分发到不同的队列中,在不同的队列上产生不同的监听,监听到队列中的消息做积分的保存,保存流程如下:

查询积分

在个人中心,用户可以查看当天各种不同类型的已获得的积分和积分上限
根据积分类型分组统计获取的积分返回给用户即可

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号