张志明的个人博客 | 志明与春娇de志明,一个奔跑在运维界的胖子

红黑二叉树的插入与旋转图解(看不懂你砍我)

二叉树我们都知道,就是一棵树,红黑二叉树是满足特殊条件的二叉树,这棵树是一颗有颜色,而且符合一定规则的树,规则如下: 根节点必须是黑色的 没有两个红色节点是紧挨着(父节点和子节点不可以同时为红色) 从根节点到任意末尾节点的黑色节点必须是相同的 如下图所示的三棵树:   树1: 满足根节点是黑色的,也没有两个红色节点相连,但是不满……

二叉查找树的增加,删除,遍历 python

本文主要使用python实现二叉查找树的如下部分: 二叉查找树构造 二叉查找树插入 二叉查找树遍历 二叉查找树删除   二叉查找树是一颗二叉树,并且基本数据结构要求满足如下条件: 所有左接点的值均小于它的根结点 所有的右接点值均大于它的根结点 所有的左右子树均是二叉查找树(每个接点都大于它左侧子树的任意接点,并小于右侧子树的任意……

如何通过Python 自动寻找代理增加网站的流量(刷流量PV)

好吧,无聊的时候写了一个自动获取免费代理的文章   连接地址 既然我们获得了免费的代理列表,那么有很多事情可以干,比如 , 爬取某个网站并且没有被封IP的风险, 比如, 增加某网站的流量, 下面是第一版, 这个砖就给大家提供个思路,因为之前使用urllib2 来实现,但是问题是没有办法保持他的回话,也就是不能达到真正和浏览器一样的效果,所……

iowait 过高问题的查找及解决linux

I/O问题一直是一个比较难定位的问题,今天线上环境遇到了I/O 引起的CPU负载问题,看到了如下这篇比较好的文章,完饭后的我还在和西红柿和黄瓜在减肥的路上抗争,正好将原文翻译成中文,供广大同胞品鉴   Linux 有许多可用来查找问题的简单工具,也有许多是更高级的   I/O Wait 就是一个需要使用高级的工具来de……

python抓取看kindle(kankindle.com)所有的电子书并下载-爬虫

更新:2016-12-07 kankindle.com官网改版了,这个版本已经无法下载了,新版本正在更新中…   写了一个python脚本下载看kindle(kankindle.com)的所有电子书,程序会自动下载首页部分13页的所有电子书,下载到ebook目录下,程序会检测是否下载过,程序更新时间是20160421……

pagerduty 查询并ack alert

pagerduty作为一个付费的监控通知系统,api写的也是真的烂……,虽然可以通过app或者网页来ack报警,但是通过命令行无疑更快,直接上代码  

两个核心的值API_ACCESS_KEY和id,传入对应的incident的id我们就可……

crontab 如何加载ssh-key

很多时候,我们需要在crontab 里执行一些脚本,命令,这些命令是需要使用ssh-key的,如何让我们的cron job能够正常使用我们的key呢? 先分享一个小脚本:

具体调用方法如下:

因为正常的Pla……

linux下如何修改以-开头的文件名

前几天手残写脚本的时候没有定义变量,结果脚本创建了类似的文件:

这个时候你就回发现完犊子了,无论执行什么命令, – 都会让你的命令运行不成,重命名呢? 不行,默认情况下,mv会把 -当成一个参数,然后你无法命名,也无法打开 正确的方式为: [crayon-5b4……

书单-linux运维-SRE

最近整理了一下作为一个运维狗(SRE)新买和之前的相关书籍,虽然买了kindle,但是还是免不了买了些新书,一些外文书还是Kindle方便,但是技术书籍还是喜欢有本书在手头,好几本也是新入手不久正在看,给大家做个参考吧       自左到右依次为: 《高性能MySQL》 《算法》(第四版) 《机器学习实战》 ……

statuspage api调用python脚本

最近有个需要,要通过zabbix 监控statuspage上没有resolved的 incident statuspage提供了一个简单的api使用文档,真的是非常的节省页面 https://doers.statuspage.io/api/v1/ 首先肯定是认证部分了,按照api的提示很容易就能找到pageid和apikey, 然后调用相……

如何创建一个本地的yum repo

有时候我们需要为了指定的几个包,创建一个repo(特别是有时候我们的服务器没有外网访问权限的时候),具体的创建步骤如下: 第一步:安装”createrepo”

第二步:创建我们的存放文件夹 我们创建的这个文件夹就是用来存放我们需要安装的rpm包的地方……

kNN算法(最近邻居法K-近邻算法)

最近在看一些机器学习的书,第一个接受的算法就是这个kNN算法…..具体什么是这个kNN算法呢? 如上图,这是维基百科给出的示例图片,其中: 1:已知所有的正方形的颜色为蓝色 2:所有的三角形是红色 需要新判定新增的圆形的颜色该是什么颜色? kNN核心的思想其实就是投票的原则,首先,我们知道了新增的圆形的位置,我们确定一个K,这……

zabbix trigger的接触条件

我们平时在使用zabbix的时候可能需要用到一些高级的trigger使用方法 例如:

这个意思是说,我们docker使用的内存过多的时候,就触发报警,但是什么时候接触呢?默认就是小于这个值就会接触,但是有时候,我们想要的并不是简单的小于这个值,我们需要更小的值 例如,使用的……

如何在ansible role中调用自己的Module和filter

我们自定义了自己的filter和module之后,普通的调用肯定都没问题(在playbooK同级目录下创建对应文件夹) 如何在一个role中增加自己的module和filter? 首先,我们看一个正常的role的目录结构:

这是一个标准版的例子,如何想加入module和fi……