后端的诉求很简单:别让我在周末收到告警。我不知道该说什么,就笑了笑。我把线程 dump 拉出来分析,发现两百个线程在等同一把锁。真香定律准时生效
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
我数了下这个服务的依赖,一共十九个。我重新看了一遍手上的计划,把风险项标了出来。我把这个本地缓存的过期时间缩短了,数据终于鲜活了。这大概就是程序员的人生吧
查了三小时的 bug,是缓存的锅;又查了三小时,还是缓存的锅。我先确认了一遍前置条件,再动手。我把这个事务的边界收窄了一点点,长事务的告警少了。感动,然后我学到了新的一课
后端最擅长的事是把一个简单需求做成一次架构升级。我忽然觉得,这可能就是这一行的常态。我打开了这个队列的堆积监控,发现消费者早就停了。我把这条经验写进了团队 wiki
这个接口的文档和实现已经有两处对不上了。我笑了笑,决定不解释。我把这个批量接口分了页,单次请求终于不再超时。连茶水间都安静了
后端的诉求很简单:别让我在周末收到告警。我想了想自己这些年,好像确实如此。我把这个接口的日志级别降到了 debug,生产环境立刻安静了。感动,然后我学到了新的一课
我把这个场景想全了,漏掉的是断电。我打开记录从头到尾扫了一遍。我把这个异常的兜底加上,至少不会再往上抛一堆堆栈。我沉默了,但心里是服的
这个服务的超时设置是去年拍的,到现在没人动过。我盯着屏幕,觉得这才是我的一天。我把这个接口做了限流,营销活动终于没把库打垮。从此我多了一条团队规约
接口 QPS 突然涨了十倍,我第一反应是有人爬我们数据。我默默打开了编辑器,准备一步步验证。我打开了慢查询日志,第一条就是那个熟悉的 SQL
OOM 了,堆 dump 下来 3 个 G,打开一看全是缓存,缓存了三年前的数据。我把这个接口的日志级别降到了 debug,生产环境立刻安静了。第二天这个方案就变成了团队标准做法