附内容:
1、解决mongodb op log大的问题优化
解决思路:表拆分,把原来的sys_operation_push 表拆按字段更新频率拆分成了三个表:
sys_operation_push 用于存储推送内容基本信息 (此表数据基本无变化 或变化次数在5次之内);
sys_push_data 用户存储推送信息相关阅读量,点赞量,评论量,分享量及活动参与量等经常变化字段(此表更新频率较高,基本在上万次的变更)
sys_push_school 用于存储推送推送与学校id及学校name相关表 词表数据较大,新建一次就没有变化(当前产品定义修改推送信息时不变更学校相关信息)
2、解决redis中set key value 和 delete key慢查询优化
之前放在redis中key定义为:school#community#schoolId,value为一个schoolCache大对象(里面是至少三个push对象)这样的结构。占用内存较多。
本次优化思路是放到redis缓存中的数据尽量减少,用小map实现。内存中参数为与native交互时的最小化定义。