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

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

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 人关注

相关问题

关于问答,文章调用摘要!源码和默认模板修改方法!
关于增加第三方附件云存储功能的建议
关于微信菜单和输入框问题
关于编辑器的问题和建议
关于程序的一些问题
WeCenter通知是通知什么?
关于邮箱的问题,我没有开启邮箱服务,告诉我邮箱发送成功我呵呵哒了
关于微信公众平台绑定网站账号的想法
关于OSS附件上传问题
关于WeCenter 2.1 Preview 1的三点疑问

推荐内容

手机端这个页面和迷惑
3.01 积分规则页面打不开
狂拽炫的校园网站
采用单一树形模式吧
2.2.1 classic模板下 无法添加话题
有个功能上的BUG,注册时邮箱填错,无法修改邮箱在进行验证。
3.1.9 一部分中文名注册提示用户名不符合规则
关于如何规避空间商过滤关键字的问题?
2.5文章和问题分类有问题