在互联网时代,热门主播集中直播、电商双十一大促、热门微博话题评论转发等行为的背后都是海量数据的高并发和分发的应用场景,这些场景化成技术解决方案多种多样,这里列举一个常见的场景,在微博里当用户某个话题被回复,或者话题被删除或者置顶之后,这种变化会即时的通过手机发送给用户,这里面用到的技术其实是存储用户信息的存储表格里某个字段的数据被修改后,变化内容通过消息通道或者通过移动推送给手机端的应用。

传统的架构在处理这种场景时,通常是将数据写入到表格存储,启动一个定时任务来拉取最新更新的数据,再进行后续处理。

架构图说明:接入端(手机、WEB端等)发送请求,把数据写入表格存储,后端云服务器拉取表格存储的数据进行处理,并把处理后的数据分发到例如消息通道,移动推送等。

在这里有几个技术问题需要关注:

  1. 如何获取表格中最新更新的记录。
  2. 定时器设置成多少才不成为应用瓶颈。
  3. 如果更新的数据量较大,一次处理多少条数据比较合理。
  4. 如果数据量更新较大,而超过一台服务器处理能力,怎么做负载均衡来分散处理请求。
  5. 处理后的数据,需要写分发程序来调用其他资源。