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利用elaphe制作二维条形码实现代码
May 25 Python
python脚本监控Tomcat服务器的方法
Jul 06 Python
OpenCV图像颜色反转算法详解
May 13 Python
django的ORM操作 增加和查询
Jul 26 Python
python mysql断开重连的实现方法
Jul 26 Python
python Django 创建应用过程图示详解
Jul 29 Python
解决Python 异常TypeError: cannot concatenate 'str' and 'int' objects
Apr 08 Python
keras导入weights方式
Jun 12 Python
python 实现控制鼠标键盘
Nov 27 Python
深入理解Python变量的数据类型和存储
Feb 01 Python
Python获取百度热搜的完整代码
Apr 07 Python
如何利用python实现Simhash算法
Jun 28 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
Codeigniter框架的更新事务(transaction)BUG及解决方法
2014/07/25 PHP
ThinkPHP里用U方法调用js文件实例
2015/06/18 PHP
使用phpstorm和xdebug实现远程调试的方法
2015/12/29 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
兼容多浏览器的字幕特效Marquee的通用js类
2008/07/20 Javascript
toString()一个会自动调用的方法
2010/02/08 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
AngularJS 2.0新特性有哪些
2016/02/18 Javascript
浅谈JavaScript函数的四种存在形态
2016/06/08 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
简单实现轮播图效果的实例
2016/07/15 Javascript
详解vue-validator(vue验证器)
2017/01/16 Javascript
vue的keep-alive用法技巧
2019/08/15 Javascript
Vue 自定义指令功能完整实例
2019/09/17 Javascript
小谈angular ng deploy的实现
2020/04/07 Javascript
Python面向对象基础入门之设置对象属性
2018/12/11 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
基于Python实现剪切板实时监控方法解析
2019/09/11 Python
Python While循环语句实例演示及原理解析
2020/01/03 Python
python实现低通滤波器代码
2020/02/26 Python
Python定时器线程池原理详解
2020/02/26 Python
python matplotlib实现将图例放在图外
2020/04/17 Python
Python编写memcached启动脚本代码实例
2020/08/14 Python
Selenium环境变量配置(火狐浏览器)及验证实现
2020/12/07 Python
CSS3简单实现照片墙
2014/12/12 HTML / CSS
伦敦一家非常流行的时尚精品店:Oxygen Boutique
2017/01/15 全球购物
英国电器零售商:PRC Direct
2018/06/21 全球购物
法国一家芭蕾舞鞋公司:Repetto
2018/11/12 全球购物
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
关于Java finally的面试题
2016/04/27 面试题
毕业生动漫设计求职信
2013/10/11 职场文书
初三化学教学反思
2014/01/23 职场文书
计算机科学技术自荐信
2014/06/12 职场文书
2015年度培训工作总结范文
2015/04/02 职场文书
公司市场部岗位职责
2015/04/15 职场文书
爱国主题班会教案
2015/08/14 职场文书