投票、抽奖与连麦

与点赞不同

投票、抽奖、连麦不是「只看热度」,它们有结果一致性要求——投错票、抽错奖、连麦断了都会引发纠纷。

投票

投票需要可验证:

  • 同一用户是否只能投一次?
  • 投票截止时间如何确定?
  • 结果如何统计和展示?

设计要点:

  • 服务端计票:不信任客户端上报。
  • 同一用户去重(用户 ID / 设备)。
  • 截止时间以服务端为准。
  • 定时广播结果,而非逐条广播投票事件。

抽奖

抽奖对公平性要求高:

  • 抽奖资格如何计算?
  • 中奖规则是否透明?
  • 结果是否可审计?

设计要点:

  • 规则固定:抽奖逻辑预先定义,不接受临时改规则。
  • 过程审计:参与记录、抽取过程、中奖结果全部留痕。
  • 可复盘:有争议时能回放整个过程。

连麦

连麦状态复杂:

  • 信令(谁上麦、谁下麦)与媒体(音视频流)分离。
  • 信令走弹幕的实时通道,媒体走 RTC 服务。
  • 状态要服务端权威:谁在麦上,以服务端为准。

共同原则

这三个功能有一个共同点:不能只依赖客户端。

  • 客户端可以做交互反馈。
  • 但状态、计票、抽签、麦序都要服务端权威。
  • 结果可审计、可复盘。

一句话

投票、抽奖、连麦 = 服务端权威 + 规则固定 + 可审计。它们的一致性要求高于点赞,处理策略也随之不同。

下一节看管理动作:禁言、踢人、清屏。

发现内容有问题?

告诉我们哪里需要改进。