3月 21

Tengine使用proxy_upstream_tries模块

proxy_next_upstream指令可以指定故障转移的状态码,但是不能限制故障转移的次数,当upstream全部故障时,所有upstream都会被请求一遍,造成后端压力成倍增加。因此有必要限制故障转移的次数。Tengine中使用proxy_upstream_tries模块实现限制重试的次数。 实验 只配置proxy_upstream … Continue reading

9月 29

zabbix学习记录

概述 开源的,高度集成的分布式监控解决方案 通过C/S模式采集数据,B/S模式在web端展示和配置 Client:主机通过安装agent方式采集数据,网络设备通过SNMP方式采集数据 Server:收集agent和SNMP发送的数据并写入数据库(MySQL等),在通过php前端在web上展示 监控的意义 及时处理故障 为容量规划提供数据支 … Continue reading

8月 27

多文件URL统计

来源于一道面试题,有多个文件格式如下: 即第一列为url,第二列为count,要求统计多个文件中url的总的count及url出现的位置。 php实现 结果: 抽样验证: 可以看到结果正确 shell实现 结果: 和php的执行结果一致 awk 顺便说一下,这道题本来是考awk的,不会,于是用shell写,吭哧吭哧半天写出个不怎么完善的, … Continue reading

8月 22

正则匹配IP地址

描述 IP地址的长度为32位,分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用英文句点 "." 隔开。 分析IP地址的组成特点:250-255、200-249、0-199。 分开考虑: 250-255:特点:三位数,百位是2,十位是5,个位是0~5,用正则表达式可以写成:25[0-5] 20 … Continue reading

8月 17

Linux系统监控工具

cpu信息 /proc/cpuinfo 查看cpu基本信息 uptime查看负载 load average这个输出值,它的3个值的大小一般不能大于系统CPU的个数 vmstat proc - r 运行和等待cpu时间片的进程数量,如果长时间大于0(另说大于系统cpu个数), 表示cpu不足 proc - b 等待资源(IO、memory) … Continue reading

8月 11

Nginx笔记(二)

location 语法 匹配顺序实例 正则表达式前后顺序影响匹配 以dokuwiki为例。dokuwiki需要配置某些目录禁止访问,如果以下面的顺序,则请求 conf data 等目录下的php文件仍然会返回200,原因是优先匹配了前面的正则。如果调换位置,则禁止目录下的php文件也会返回403。 另外一种方法是使用 ^~ 前缀严格限制目 … Continue reading

8月 08

Nginx笔记(一)

概念 高性能的HTTP和反向代理服务器软件 IMAP/POP3/SMTP代理服务器 发音: engine x 作者:俄罗斯程序设计师Igor Sysoev 许可类型:类BSD 跨平台:UNIX、GNU/Linux、BSD、Mac OS X、Solaris以及Microsoft Windows等操作系统中 特点:稳定、高效 特性 静态编译 … Continue reading

8月 04

找出子网中最长连续可用IP

昨天的一道面试题,要求找出一个网段中最长的连续可用IP,需要考虑关机的但已经静态分配了IP的机器。 当时用ping找出了能ping通的IP,但是没有想到怎么找出最长的连续段,并且不模拟多线程会比较慢。现在先不考虑关机的情况,用nmap做一遍。代码如下: 结果如下: