shell 练习-自动重启php-fpm

服务器上跑的是LNMP环境,近期总是有502现象。502为网站访问的状态码,200正常,502错误是nginx最为普通的错误状态码。由于502只是暂时的,并且只要一重启php-fpm服务则502消失,但不重启的话,则会一直持续很长时间。所以有必要写一个监控脚本,监控访问日志的状态码,一旦发生502,则自动重启一下php-fpm。

我们设定:

  1. access_log /data1/log/access.log
  2. 脚本死循环,每10s检测一次 (假设每10s钟的日志条数为300左右)
  3. 重启php-fpm的方法是 /etc/init.d/php-fpm restart

阅读全文 >>

shell 练习-每天删除两天前的文件

web服务器上有个目录,它的结构是这样的,首先有256个一级子目录和一个特殊目录,另外这256个一级子目录下还有256个二级子目录(特殊目录除外)。在这些二级子目录下有很多小文件,而且是每时每刻都会生成很多个。 虽然文件不大,但是时间长了,逐渐发现该分区的下inode快被占用满了。 所以请写一个小脚本,实现每天删除两天前的小文件,注意忽略那个特殊的一级子目录default。

阅读全文 >>

Python 流程控制-for循环字典

        Python for循环不但可以遍历序列,还可以遍历字典。

通过 for 循环遍历字典

        先定义一个字典

1
2
3
4
5
6
7
8
9
In [4]: dic = {'a':1, 'b':2}
In [5]: dic.fromkeys('abcde',100)
Out[5]: {'a': 100, 'b': 100, 'c': 100, 'd': 100, 'e': 100}
In [6]: dic1 = dic.fromkeys('abcde',100)
In [7]: dic1
Out[7]: {'a': 100, 'b': 100, 'c': 100, 'd': 100, 'e': 100}

阅读全文 >>