一、业务介绍
笔记灵感,是小红书创作者服务团队做的一个功能,目的是为了给用户发布笔记提供参考与指引。 笔记灵感每周五八点更新,运营在周五八点之前编辑好要展示的笔记灵感,过了周五八点之后就可以在线上生效展示了。 (ps:这个功能目前我已经不再维护,所以这里只聊下当初我负责开发是的业务经验)
二、技术方案1.0
1.0的方案中,其实就是很简单的逻辑:运营配置,然后到点生效。 实际上线之后,因为到点之前,没办法在线上确认展示效果,所以运营都必须在周五八点这个更新时间点,去线上确认下,配置是否生效,每次都搞的心惊肉跳的(因为真的上线出问题了)。
1.0的版本上线之后,接连出现如下一些问题:
- 后端bug,配置数据生效之后,有些异常情况后端没正确处理????????
- 前端bug,配置生效之后,前端把视频笔记当成图文笔记处理了,导致视频笔记都不能展示????????
- 上线之后,运营发现有的笔记不不合规,所以没展示出来????????
三、技术方案2.0
2.0的方案,相比1.0,主要是做了两个优化:
- 配置检查:每次配置上线的前一天,检查运营是否配置,如果没配置,就给运营发送提醒。免得总是担心运营忘记配置。????????
- 预览:所有配置,必须要预览之后才可以上线。(关于预览怎么做,之前已经写过一篇文章:????????预览应该怎么做?,所以画流程图时,直接简化了,这里也不再谈预览怎么实现)。????????
四、定时任务
笔记灵感功能,会在每周五更新之后,给特定人群发消息。 在定时任务执行结束之后,会给相关人员发送执行报告,大致内容如下:
向x订阅笔记灵感用户发送消息,当前时间戳:xx, 每轮发送用户数:xx
向x订阅笔记灵感用户发送消息结束,当前时间戳:xxx, 实验1共发送:xxx, 实验2共发送:
xxx
幸好发消息带上了详细的数值参数,产品发现实际发送消息的用户数量,和预期不一致,我这边排查之后,才发现是后端依赖的第三方组件存在bug。
五、回顾总结
- 配置类型需求,必须做预览,不能直接在线上生效。其实在最开始的技术方案里,就应该添加语言与配置检查的,至不济,在第一次线上出问题时,就应该反应过来的。
- 定时任务执行,必须要发送信息完整的执行报告给相关方,确定任务在执行,并且执行正确。
- 关键时间点,要加通知提示,避免遗忘。
(笔记灵感其实做了挺久,但是一写总结,发现也没啥太多好写的,总结能力有待提升呀)
|