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操作sqlite的CRUD实例分析
May 08 Python
pymongo为mongodb数据库添加索引的方法
May 11 Python
python3使用urllib模块制作网络爬虫
Apr 08 Python
Python当中的array数组对象实例详解
Jun 12 Python
简单了解Django ContentType内置组件
Jul 23 Python
python3使用print打印带颜色的字符串代码实例
Aug 22 Python
Python3离线安装Requests模块问题
Oct 13 Python
python3.x 生成3维随机数组实例
Nov 28 Python
PHP基于phpqrcode类库生成二维码过程解析
May 28 Python
Django celery异步任务实现代码示例
Nov 26 Python
Python GUI库Tkiner使用方法代码示例
Nov 27 Python
Python 线程池模块之多线程操作代码
May 20 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
站长助手-网站web在线管理程序 v1.0 下载
2007/05/12 PHP
thinkphp四种url访问方式详解
2014/11/28 PHP
原型方法的不同写法居然会影响调试的解决方法
2007/03/08 Javascript
对google个性主页的拖拽效果的js的完整注释[转]
2007/04/10 Javascript
jQuery点击tr实现checkbox选中的方法
2013/03/19 Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
2013/04/08 Javascript
JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
2014/10/17 Javascript
javascript白色简洁计算器
2015/05/04 Javascript
理解JavaScript事件对象
2016/01/25 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
2016/11/25 Javascript
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
微信小程序mpvue点击按钮获取button值的方法
2019/05/29 Javascript
[46:21]Liquid vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python设计模式之观察者模式实例
2014/04/26 Python
Python实现读取文件最后n行的方法
2017/02/23 Python
python 字典中文key处理,读取,比较方法
2018/07/06 Python
解决python3中的requests解析中文页面出现乱码问题
2019/04/19 Python
Python3.7+tkinter实现查询界面功能
2019/12/24 Python
深入浅析python的第三方库pandas
2020/02/13 Python
解决Alexnet训练模型在每个epoch中准确率和loss都会一升一降问题
2020/06/17 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
2021/02/24 Python
css3中less实现文字长阴影(long shadow)
2020/04/24 HTML / CSS
HTML5 Web 存储详解
2016/09/16 HTML / CSS
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
沙特阿拉伯电子产品和家用电器购物网站:Black Box
2019/07/24 全球购物
Servlet方面面试题
2016/09/28 面试题
幼师自我鉴定范文
2013/10/01 职场文书
《春天来了》教学反思
2014/04/07 职场文书
社团活动总结范文
2014/04/26 职场文书
中学生自我评价2015
2015/03/03 职场文书
单位考核鉴定意见
2015/06/05 职场文书
团队拓展训练感想
2015/08/07 职场文书
靠谱准确的求职信
2019/04/02 职场文书
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
2021/05/26 Python
Python Django项目和应用的创建详解
2021/11/27 Python