一耕

从低到高,从慢到快,从始到终,从此到彼

2018年5月13日星期日

Linux IO调度器

›
1.Linux IO体系 IO调度器系统(I/O Scheduler)是Linux I/O体系中的一个组件,其所处的体系位置如下图所示:  Linux整体I/O体系可以分为七层,它们分别是 VFS虚拟文件系统:抽象出文件系统接口,其下可以对接ext4,xf...
1 条评论:
2018年5月5日星期六

SMP/MPP/NUMA系统架构了解

›
本文涉及到如下三种常见服务器架构: SMP ( Symmetric Multi-Processor ,对称多处理结构)。单主机架构。 NUMA ( Non-Uniform Memory Access ,非一致性内存访问)。单主机架构。 MPP ( Massiv...
2018年5月1日星期二

golang disk free采集不准确问题

›
     工作中接手的 golang 程序运行一段时间后,出现了采集的主机信息 free 不准确的问题, golang 采集的程序与 df 看到的结果不一致。追踪源码发现核心的采集逻辑是如下这段 : func getVfsStats ( path string ) ( t...
2018年4月19日星期四

golang slice函数值传递的“隐患”

›
    直接上现场,看看你能不能一眼识破“隐患”根因!     下文函数基本功能是针对一个分片 silce 的数据,设置将前 toCount 个数据更新为 100 以内随机数,如果 toCount 大于当前的 slice 总长度,则扩大到 toCount 大小并填...

golang struct中内部类型embedding Type用法

›
    Golang通过内部类型或者嵌入类型embedding的方式来实现一种代码的复用以及重定义,类似与Java中的继承和重载。      这种内部类有时候也被称为匿名属性(anonymous field,形式上,与其他属性相比,就是没有名字~),这里统一用“内部类型”来指代...
2018年4月10日星期二

分区与文件系统问题两例

›
为 MySQL 服务器划盘经常会遇到各种各样的问题,究其原因还是重装主机的时候,盘并没有进行完整彻底的格式化,记录下今天遇到的两例问题 . 1)分区删除 为了解决装机时偶尔有分区信息残留导致后续初始化失败,脚本中加入了如下代码进行前置操作,无脑清理 : fd...
2018年4月8日星期日

OOM的触发条件与配置

›
    OOM(Out of Memory)指Linux在无可用内存时的一个最后策略。当系统中可用内存过少时,OOM killer会选择kill某些进程,来释放这些进程所占用的内存。 1.何时触发oom killer 现代内核通常在分配内存时,允许申请的内存量超过实际可分...
2018年3月22日星期四

/dev/shm的用途

›
    工作中遇到在公司内部容器环境下yum报错的情况,报错如下: Total size: 229 M Installed size: 1.2 G Is this ok [y/d/N]: y Downloading packages: Running transaction ...
2018年3月20日星期二

dd命令用法详解

›
一.dd命令用法 dd的作用是拷贝文件,从指定的来源,指定的方式进行文件创建、拷贝,过程中可以进行各种转换。 dd可以很方便的验证各种IO表现,还可以用来进行整个盘/文件的复制。 dd的拷贝方式是数据块block级别的, 忽略文件系统类型和操作系统。
2018年3月17日星期六

iostat用法详解

›
iostat 是 CPU 以及 IO 设备 / 分区信息统计(注意,不是文件系统)的工具,非常常用,可以查看 cpu 使用情况以及 IO 设备当前繁忙情况。本文介绍常用方法,以及指标解读。 一 . 用法 iostat [ options ] [ interva...
2018年3月15日星期四

sysbench 1.0用法探索

›
一.介绍 sysbench很久用过之前0.4的版本,目前已经正式到1.0版本,用法也有了变化,探索一下sysbench的使用场景,方便后续使用。 官方介绍 https://github.com/akopytov/sysbench, sysbench是一个模块化,跨...
›
主页
查看网络版本
由 Blogger 提供支持.