关于我ABOUT
我是王锐,做后端开发和系统运维,日常和接口、日志、数据库、服务器打交道。工作的很大一部分是把别人描述不清的问题,变成一张能看懂的结构图,然后找到那根真正松掉的线。
写东西的习惯是从排查问题开始的:当时记下来,是因为下次还会遇到。时间久了,零散的笔记攒成了一套自己的方法——先复现,再缩小范围,最后才动手改。这套顺序看起来笨,但很少出错。
在做的事NOW
手上主要有三件长期的事。一件是把服务里散落各处的日志收拢成一条能追溯的链路,让线上出问题的时候不用靠猜;一件是把重复的运维动作写成脚本,交给定时任务去做;还有一件是把过去几年积攒的排查记录重新整理成可检索的条目。
可观测性整理
把指标、日志和调用链对齐,让一次异常的定位从半小时缩到几分钟。
自动化运维
把重复的手工步骤固化下来,减少人为操作带来的不确定性。
笔记归档
旧记录重新分类、补齐上下文,让它们以后还能被自己和别人用上。
小工具
写一些只解决一个具体问题的小程序,用完即走,不追求通用。
记录NOTES
按时间倒序。写的时候尽量把当时的判断也留下,因为结论会过时,思路不会。
-
一次数据库连接耗尽是怎么被找到的从报警到定位花了四十分钟,问题不在数据库,而在连接池的一段回收逻辑。
-
把日志读成时间线同一件事散落在三台机器上时,怎么把它们拼回一个完整的过程。
-
关于「先复现」这件事没有稳定复现路径的问题,改起来基本靠运气。所以第一步永远是让它出现。
-
脚本不是越短越好一个只跑一次的脚本可以随意,一个会跑三年的脚本必须能被别人看懂。
-
备份验证比备份本身更重要没恢复过的备份不算备份,这句话我用了很久才真正记住。
读与用READING & TOOLS
读书偏向于能把事情讲清楚的那一类,不太追新。工具也一样,用得顺手就一直用,换工具的代价往往比想象中大。
在读
系统设计方面的经典书,配合几本关于写作的书一起看。前者教我怎么组织系统,后者教我怎么把它讲明白。
常用
终端、编辑器、版本控制,加上几支自己写的脚本。界面朴素,够用就好。
常看
项目文档和源码。文档讲它想做什么,源码讲它实际做了什么,两个都得看。
常写
排查记录、临时脚本、给同事的说明。写得越多,下次解释得越少。
联系CONTACT
如果文里的某件事正好也是你遇到的问题,欢迎在任意一篇记录下面留下你的想法。技术上的讨论我一向愿意聊,哪怕最后结论是「这条我也没搞明白」。
回复不一定及时,但看到就会回。