Python如何获取系统iops示例代码


Posted in Python onSeptember 06, 2016

iops简介

iops主要用在数据方面,这个指标是数据库性能评定的一个重要参考,iops的是每秒进行读写(I/O)操作的次数,主要看随机访问的性能,一般为了iops增高都要依靠磁盘阵列,实际线上的数据库基本都是raid10的配置,raid5在实际生产环境中如果压力上来是抗不住的,当然也要开具体业务压力情况,如果是用物理机就要看iops在实际中能跑到多少值,现在云也普遍了,如果你用的RDS云数据库,这个iops是可以根据业务情况自己选择的,基本是个参数,可以按需进行修改,当然数值越大费用越高

python获得系统iops代码如下:

#!/usr/bin/python

import os, time, math

run_tests = 3

devices = os.listdir('/sys/block/')
check_devices = []

reads = {}
writes = {}

for dev in devices:
    if dev.startswith('md') or dev.startswith('sd') or dev.startswith('hd'):
        check_devices.append(dev)
        reads[dev] = []
        writes[dev] = []

check_devices = sorted(check_devices)

for t in range(run_tests + 1):
    for dev in check_devices:
        file_data = open('/sys/block/%s/stat' % dev).readline().strip().split(' ')
        clean = []
        for num in file_data:
            if num != '':
                clean.append(int(num))

        reads[dev].append(clean[0])
        writes[dev].append(clean[4])
    print reads[dev]
    print writes[dev]

    time.sleep(1)



print "Device    Read    Write"
print "--------------------------------------"
for dev in check_devices:
    clean_reads = []
    reads[dev].reverse()
    for test, result in enumerate(reads[dev]):
        if test > 0:
            clean_reads.append(float(reads[dev][test - 1] - result))

    rops = int(math.ceil(sum(clean_reads) / len(clean_reads)))

    clean_writes = []
    writes[dev].reverse()
    for test, result in enumerate(writes[dev]):
        if test > 0:
            clean_writes.append(float(writes[dev][test - 1] - result))

    wops = int(math.ceil(sum(clean_writes) / len(clean_writes)))

    print "%s %s %s" % (dev.ljust(13), repr(rops).ljust(11), repr(wops))

总结

以上就是Python获得系统iops的全部内容,希望这篇文章对大家学习和使用python能有一定的帮助,如果有疑问大家可以留言交流。

Python 相关文章推荐
python中as用法实例分析
Apr 30 Python
python定时检查某个进程是否已经关闭的方法
May 20 Python
Python2.x版本中基本的中文编码问题解决
Oct 12 Python
python 打印出所有的对象/模块的属性(实例代码)
Sep 11 Python
python实现图片处理和特征提取详解
Nov 13 Python
Python实现快速计算词频功能示例
Jun 25 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
Dec 24 Python
Python线程池模块ThreadPoolExecutor用法分析
Dec 28 Python
Django框架实现的分页demo示例
May 25 Python
python批量读取文件名并写入txt文件中
Sep 05 Python
Python爬虫使用代理IP的实现
Oct 27 Python
基于pytorch中的Sequential用法说明
Jun 24 Python
python3编码问题汇总
Sep 06 #Python
用Python实现命令行闹钟脚本实例
Sep 05 #Python
Python爬虫爬取美剧网站的实现代码
Sep 03 #Python
Python选课系统开发程序
Sep 02 #Python
简单谈谈Python中函数的可变参数
Sep 02 #Python
Python实现自动添加脚本头信息的示例代码
Sep 02 #Python
利用Python获取操作系统信息实例
Sep 02 #Python
You might like
PHP+AJAX实现无刷新注册(带用户名实时检测)
2007/01/02 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
方便实用的jQuery checkbox复选框全选功能简单实例
2013/10/09 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
jQuery制作简洁的图片轮播效果
2015/04/03 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
总结jQuery插件开发中的一些要点
2016/05/16 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
利用node.js爬取指定排名网站的JS引用库详解
2017/07/25 Javascript
Vue中render方法的使用详解
2018/01/26 Javascript
vue router+vuex实现首页登录验证判断逻辑
2018/05/17 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
浅谈vue项目用到的mock数据接口的两种方式
2019/10/09 Javascript
用vue 实现手机触屏滑动功能
2020/05/28 Javascript
在Django的模型和公用函数中使用惰性翻译对象
2015/07/27 Python
Windows下Eclipse+PyDev配置Python+PyQt4开发环境
2016/05/17 Python
python学习必备知识汇总
2017/09/08 Python
Python切片操作实例分析
2018/03/16 Python
python多维数组分位数的求取方式
2020/03/03 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
动态设置django的model field的默认值操作步骤
2020/03/30 Python
Python yield生成器和return对比代码实例
2020/04/20 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
美国时尚在线:Showpo
2017/09/08 全球购物
迪斯尼假期(欧洲、中东及非洲):Disney Holidays EMEA
2021/02/15 全球购物
营销总经理岗位职责
2014/02/02 职场文书
代收款委托书范本
2014/10/01 职场文书
2014年统战工作总结
2014/12/09 职场文书
2015年教务工作总结
2015/05/23 职场文书
文艺晚会开场白
2015/05/29 职场文书
2016幼儿教师自荐信范文
2016/01/28 职场文书
辞职申请书范本
2019/05/20 职场文书
创业计划书之干洗店
2019/09/10 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
2021/06/04 Oracle