文章置顶收费功能?过期时间如何处理?

问题描述

项目今天增加了一个置顶收费功能,设计思路是这样的

  1. 发布文章时,添加一个置顶按钮,如果用户选择 然后发布成功会跳转到支付页让用户选择置顶时间和支付金额
  2. 在文章表中添加了两个字段 一个置顶位置(目前只有首页,后期扩展性才多加了这个字段) 一个是置顶结束时间
  3. 置顶订单表

文章排序是按 是否置顶 置顶结束时间 文章发布时间 排序

现在遇到一个置顶到期如何处理?

我想到的是做定时任务,读取所有置顶文章检查是否有到期的 如果有 就清空文章的置顶位置和置顶结束时间的这两个字段? 如果数据量大了 怎么处理?

不知道各位大神们有什么好的方案? 像58同城类的信息置顶是如何实现的?

阅读 448
评论
    3 个回答

    通过sql来判断是否过期就可以。如果非要有点技术性,可以将每个付费放到redis内,设置过期时间,每次查询redis key是否存在,其实与sql直接查询没有区别,具体sql参考 上官大佬的回复即可

      相似问题
      推荐文章