码迷,mamicode.com
首页 > 其他好文 > 详细

项目随笔

时间:2018-01-04 18:12:36      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:总结   微信公众号   red   微信   公众号   pos   最大连接数   崩溃   粉丝   

前因:最近上线的一个微信公众号,粉丝在60w+,每次客户推送公众号文章时,数据库必爆炸

硬件:服务器webapp 4实例

     数据库p4

排查:最初服务器是双实例s2->升级到4实例s3->服务器ok,没有挂掉,但是数据库爆炸

     数据库升级到p6->不行->临时升级到p11,ok->高峰期过后,降回p6,最终数据库定为p6

定位:因为公众号有2个菜单需要验证用户是否绑定,每次推送会有大量引流,导致验证绑定查询数据库次数过多,响应速度低于微信要求的5s,导致需要验证绑定的菜单全部崩溃

解决:1、给会员表查询字段openId和mobile增加聚合索引

   2、优化查询代码,减少查询次数

      3、新增redis存储会员数据,定时任务每天00:30同步所有会员数据到redis中,验证会员绑定时,先查询redis数据,当redis超过最大连接数之后,在把流量压给数据库

总结:1、会员表中本来可以把查询条件之一的openid作为主键的,但是由于某些原因并未将openId作为主键

 

项目随笔

标签:总结   微信公众号   red   微信   公众号   pos   最大连接数   崩溃   粉丝   

原文地址:https://www.cnblogs.com/swingzhang/p/8193991.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!