Yifei Kong

Nov 30, 2017

bug 错题本

发现有一些错误是自己经常犯的,不记录下来回顾一下,总是会一直犯。高中的时候还有习惯来记录错题,然而这么好的习惯,到了大学里却莫名其妙的没有了,知道毕业两年后的今天才突然想起。所以第一个场贩的错误就是思想上的——学习是一件终身的事,要延续好习惯。

对于各种持有资源的连接池对象等,要时刻注意它们是否是线程安全的。

Python

更新变量的value的时候,变量名写错了,导致创建了一个没有用的新变量,老变量的value却没有更新

解决:

  1. 使用pylint 检查代码,会提示 unused variable;
  2. 在写代码的时候多用自动补全,而不要手动打出每一个变量。

Python 的变量声明和赋值没有分开,这个是一个坑,只能通过多用工具检查来实现

故障排查

  • 有时候删文件删不掉但是空间还在占用是因为还有程序在使用这个文件

  • CPU wait 比较高说明在做io

  • 操作系统相关问题(OOM)

dmesg -Ttail -200 /var/log/kern.log 查看系统kill进程的日志,可以看到被kill掉时候的内存占用,再用free -m 查看一下是否超出了内存