直播间机器人设计方案

设计目标

1:模拟一定人数在房间,保证房间的人气

2:不同时段房间内房间机器人的人数要有波动,防止人数不真实

3:支持房间内做活动,需要临时增加大批量的用户

4:机器人不能出现大批量进入房间,大批量退出房间的情形

设计流程

1:增加robot进程进行通知机器人进入房间退出房间的处理

2:设计给机器人分配特定的号段区间 (例如:850000000-860000000)

2:robot进程读取配置文件,获取房间信息,以及房间的机器人配置信息流程

4:如有讲师在麦上,robot服务定时判断真实人数和在线人数的比例公式,判断是否需要增加或减少机器人,如果需要,则发起信令请求,消息流为:

robot->usermgrsvr->gateway->roomsvr

5:房间服务器获取到加入房间请求后,判断当前的最大机器人ID,然后从最大的机器人ID

往上累加,获取最新的机器人ID。(如果达到最高的配置860000000,则从最低850000000开始循环)。然后根据新增加机器人ID,做加入房间的处理.

6:房间服务器获取到退出房间的请求后,判断当前的最小机器人ID,然后删除指定的机器人数量

7: 如果没有讲师在麦上,robot服务逐步删除房间内的机器人,发起信令请求, 消息流为:

   robot->usermgrsvr->gateway->roomsvr,房间服务器处理为第6部。

配置文件

robot配置文件robot.conf如下信息:

[roomlist]        #房间列表配置

Roomid=60001,60002,60003

[onlineparam]

onlinenum=20   #机器人基础在线人数

onlinerate=1-200:30;201-500:20;501-2000:10;2001-1000000000:5 #机器人数比率

假设M为真实的在线总人数

当1<=M<=200时

Totalonline =  onlinenum + M * 30

当200<M<=500时

Totalonline = onlinenum + 200 * 30 + (M-200) * 20

当500<M<=2000时

Totalonline = onlinenum + 200 * 30 + 300 * 20 + (M-500) * 10

当2000<M<=1000000000时

Totalonline = onlinenum + 200 * 30 + 300 * 20 + 500 * 10 + (M-500) *5

关注公众号“大模型全栈程序员”回复“小程序”获取1000个小程序打包源码。更多免费资源在http://www.gitweixin.com/?p=2627

发表评论

邮箱地址不会被公开。 必填项已用*标注