服务究竟被谁kill了? -- 利用SystemTap监测
利用SystemTap监测服务被谁kill了 1. 背景 Linux环境上一个应用服务会被定期异常kill掉,但是未直接找到是谁来操作的,后面绕了不少弯后找到了罪魁祸首(简单来说是其他程序bug导致操作错了进程号)。 这种场景若有更针对性的监测手段,会高效很多。基于该背景检索后尝试两种手段:audit审计 和 SystemTap。 本文对SystemTap进行实验。 2. 基本用法...
利用SystemTap监测服务被谁kill了 1. 背景 Linux环境上一个应用服务会被定期异常kill掉,但是未直接找到是谁来操作的,后面绕了不少弯后找到了罪魁祸首(简单来说是其他程序bug导致操作错了进程号)。 这种场景若有更针对性的监测手段,会高效很多。基于该背景检索后尝试两种手段:audit审计 和 SystemTap。 本文对SystemTap进行实验。 2. 基本用法...
利用audit审计监测服务被谁kill了 1. 背景 Linux环境上一个应用服务会被定期异常kill掉,但是未直接找到是谁来操作的,后面绕了不少弯后找到了罪魁祸首(简单来说是其他程序bug导致操作错了进程号)。 这种场景若有更针对性的监测手段,会高效很多。基于该背景检索后尝试两种手段:audit审计 和 SystemTap。 本文先对audit进行实验。 2. 实验 网上(同质...
当一个目录中包含1万个空文件时,目录会占用多大的空间? 1. 背景 项目中使用空文件来标记模块数量,正常情况下模块不会太多。但由于误用和边界限制不完备,标记空文件生成了1000万个而导致这个目录很大,且主备间会rsync同步该目录,进而导致系统资源异常。 本文结合实验和Linux文件系统的结构代码进行对照验证,小结以加深理解。 2. 相关知识 Linux 文件系统会为每个文件分配两...
实验学习:MySQL单表超过2000万条记录,分析现象。 1. 背景 使用MySQL存数据时,业内有个传言是单表不要超过2000万条记录,若超过则查询效率会显著降低。 本博客对该情况进行实验记录,在实践中加深学习。 1. 理论 回翻MySQL索引实现的文章:48、B+树:MySQL数据库索引是如何实现的?,结合本文场景加深一下理解。 InnoDB索引说明 ...
记录利用strace排查问题的案例 1. 前言 当系统命令或者第三方工具执行有异常,尝试排查后无明确原因又无从下手时,不妨用strace跟踪下系统调用过程。或者最开始就尝试这个思路,问题可能一目了然。 此处记录几个strace排查问题的实际案例。 2. 排查案例 2.1. ssh时需要等待10s才跳出密码输入界面 现象描述: 有两台用作相同用途的服务器,...
[译] RFC 1180:朴素 TCP/IP 教程(1991) 学习笔记 1. 前言 RFC1180一篇很简洁易懂的TCP/IP入门教程,这篇翻译也很好。对网络栈和IP路由规则解释得很清晰,配合抓包对照理解更佳。 2. ARP ARP请求:收到192.168.1.100的广播包,谁是192.168.1.2(当IP不在ARP表时,广播ARP请求) arp应答:自己是192.168....
网络案例实践:设置机器的MTU和MSS。通过案例理解MTU和TCP MSS协商。 1. 概念 主要参考laixintao 老师的文章:有关 MTU 和 MSS 的一切 1.1. MTU MTU(Maximum Transmission Unit,最大传输单元) 指的是二层协议(也有说三层协议的,不同的厂商,甚至同一厂商的不同产品型号对MTU的定义也不尽相同)里面的最大传输单元,以太网...
很久没更新了,没有仪式感地做个小结。 停更原因 1、缺乏动力:之前记录的博客质量不高,没有正反馈缺乏更新动力 2、仅当用作个人笔记记录,不如文本方便:git笔记 3、工作环境不便网上记录,笔记都记录在本地;工作之余惰性驱使不想折腾 杂记 1、这几年主题:经历换工作、结婚、生子、疫情。 2、很多焦虑源于想得太多,做得太少。自勉:让正确的事持续发生、积跬步、积小流。 3、实践后理解消化的...
每个程序员应该了解的97件事 - Apply Functional Programming Principles。 应用函数式编程原理。设计有更高引用透明性的函数。 Apply Functional Programming Principles 翻译 原文链接: Apply Functional Programming Principles 应用函数式编程原理 函数式编程最近受到了...
每个程序员应该了解的97件事 - Act with Prudence。 行事谨慎并考虑后果,碰到技术债务应该怎么做。 Act with Prudence 翻译 原文链接: Act with Prudence 行事谨慎 Act with Prudence(Prudence 英 /ˈpruːdns/ 审慎,谨慎) “无论你做什么,都要行事谨慎并考虑后果” Anon “Wha...