03 2020 档案

摘要:1 背景 周一回来发现用户中心批量更新手机号未生效,上 Nexus 看了下有没有人动了 lib datasource(基础架构组的一个组件,简化连接池装配),最新一个版本在上周四,该版本解决了 AutoCommit 的问题,详见参考1。 2 排查过程 1. 打断点,确认手机号在批量插入前已经脱敏。 阅读全文
posted @ 2020-03-30 20:51 Casaa 阅读(340) 评论(0) 推荐(0)
摘要:1 背景 运营活动中,有场景针对新用户发营销,老用户不能参与活动,很自然会将老用户放入一个布隆过滤器的“黑名单”。但布隆过滤器存在假阳性的问题,虽然机率很低,但根据墨菲定律,只要量够大就必定出现。亟需一个方案用最小的成本(时间、空间)应对假阳性。 2 解决方案 训练两个布隆过滤器: 1. 白名单过滤 阅读全文
posted @ 2020-03-30 10:28 Casaa 阅读(174) 评论(0) 推荐(0)
摘要:1 背景 一个凌晨跑批需求,要在一个事务中批量插入20000条记录,但发现执行到3000条遇到异常,前2999条插入成功没有回滚。 2 排查过程 确认 @Transactional 注解是 org.springframework.transaction.annotation.Transactiona 阅读全文
posted @ 2020-03-26 10:48 Casaa 阅读(396) 评论(0) 推荐(0)
摘要:1 背景 合规要求将数据库中的敏感用户信息脱敏,账号中心和账户中心的数据库都有明文手机号。 2 解决思路 分两部分看,存量数据和增量数据,其中增量数据要先处理。 增量数据,可以通过 Getter、Setter 来实现加解密。另外 Dao(Repository)可能包含 findByPhone 的查询 阅读全文
posted @ 2020-03-26 10:45 Casaa 阅读(1448) 评论(0) 推荐(0)
摘要:背景 用户账号中心之前将手机号以明文方式存MySql,合规要求整改,要将数据库中的手机号脱敏。但加密过后的密文长度为65,数据库字段的长度为11,因此要 Modify 为 varchar(100)。但这个表的数据量不小,开发环境都有一千万条记录,贸然扩容肯定会引起生产环境长时间锁表,绝对不可取。 解 阅读全文
posted @ 2020-03-24 17:14 Casaa 阅读(356) 评论(0) 推荐(0)
摘要:快速找出配置文件 比如pwd在Tomcat目录根目录下,想修改index.ftl: du a | grep index.ftl 即可得到 index.ftl 的绝对路径,vi 编辑之即可 修改jar里的某个配置文件 比如有个项目对应 gateway.jar,想修改里面的 application.ym 阅读全文
posted @ 2020-03-24 14:50 Casaa 阅读(142) 评论(0) 推荐(0)
摘要:1 攻略目标 传奇难度下最快速度完成三神,不择手段,将RPG游戏玩成牧场经营类游戏,毫无游戏体验。 2 四个BUG 2.1 攻击商人刷新商品 和商人做完买卖后,快速保存,攻击商人,快速读档,商人的商品就会刷新一次。 2.2 晨星城隐藏宝箱 利用BUG 2.1,可以清空隐藏宝箱(负重超了请骑马),然后 阅读全文
posted @ 2020-03-10 14:40 Casaa 阅读(3054) 评论(0) 推荐(0)
摘要:1 问题描述 开发环境发版平台报 Too many open files,重启后恢复正常。 同事第一时间想到 ESTABLISHED 和 TIME WAIT 的 TCP,建议从 netstat 入手。 但发版平台只是个管理系统,没有这么大的量,于是从 lsof 层面看看文件句柄。 2 os限制了打开 阅读全文
posted @ 2020-03-04 18:40 Casaa 阅读(431) 评论(0) 推荐(0)