该问题已被锁定!
18
关注
3946
浏览

关于用户量上万后通知表数据量暴增问题

AI智能回复搜索中,请稍后...

为什么被折叠? 0 个回复被折叠
wb_sood 注册会员 用户来自于: 江苏省苏州市
2015-09-10 13:28
通知算法 加个是否 “已读”判断,如果已有新通知 未读 不再重复发送通知 ,如果 没有新通知 或已读 则 发送通知!
kenw2004 高级会员 用户来自于: 四川省成都市
2015-09-09 19:17
这的确是个大问题,会导致大流量的网站不敢使用wecenter程序。   定期清理也只能暂时缓解,我认为要彻底,还是只能改进通知算法,放弃不必要的通知。不然,就必须上大负载的服务器来缓存。
AWSupport 初级会员 用户来自于: 广东省深圳市龙岗区
2015-09-09 14:23
可以二次开发采用数据分表算法与定期删除过期通知来解决,下个版本会增加定期删除已读通知功能
    /**
     * 定期清理已读通知
     * 
     * @param $period 周期, 单位: 秒
     */
    public function clean_mark_read_notifications($period)
    {
        while ($notifications = $this->fetch_all('notification', 'read_flag = 1 AND add_time < ' . (time() - $period), 'notification_id ASC', 1000))
        {
            foreach ($notifications AS $k => $v)
            {
                $this->delete('notification', 'notification_id = ' . $v['notification_id']);
                $this->delete('notification_data', 'notification_id = ' . $v['notification_id']);
            }
        }
        
        return true;
    }
加在计划任务里即可,一个月是 2592000 秒
阿弥陀佛 初级会员 用户来自于: 广东省中山市
2015-09-09 10:44
能不能一个问题以及一个操作类型只记录一次,通知时只通知最新相关id?
wave460 初级会员 用户来自于: 河南省郑州市
2015-09-08 15:48
放出来 学习一下   我是个爱学习的人!
某一家 初级会员 用户来自于: 四川省成都市
2015-09-08 15:25
6666666666666
苏逸融 核心会员 用户来自于: 美国
2015-09-08 14:00
放网址出来,围观一下

关于作者

问题动态

发布时间
2015-09-08 13:37
更新时间
2015-09-10 13:28
关注人数
18 人关注

相关问题

通知设置链接到404错误提示
关于移动版的一些看法
关于discuz转换程的几点建议
关于搜索,当前官方2.5BETA4,使用搜索很多搜索不出来
关于编辑器的建议和看法(欢迎补充)
私信不显示通知BUG反馈
邀请一个人答题的时候呢被邀请人登录进入通知的时候弹出这样子的代码?
3.0怎么让添加的关于页面 地址是/about/about
关于“关注”和“收藏”的建议
请问后台设置部分,关于邮箱系统邮件发送设置求助!!!

推荐内容

移动端问题列表和文章列表是同一个?
邮件经常收到数据库错误Error Message: Mysqli prepare error: Unknown column 'close_notify' in 'where clause'
手机版本bug,如果关闭站点,桌面版管理员还是可以进入登录界面的;但是手机版,貌似一直是循环无法进入登录界面状态??
微信昵称Emoji表情不能存数据解决办法
Anwsion 1.1 Alpha 4如果开启ucenter之后,同步过来的用户积分为负数
话题也不能有变化?
2.2.5的手机版的bshare社交网络分享bug
搜索框中输入3.0,查不到内容 是BUG吗
发一个BUG,让官方排查一下。
布局的一个小bug