`
nihongye
  • 浏览: 102057 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

linux系统IO优化

阅读更多
1.启用写回机制,优化随机写:
ext3支持三种模式:
    journal_data,journal_data_ordered,journal_data_writeback
这三种模式在大多数情况下,性能从低到高,安全性从高到低,journal_data_writeback启用写回缓存,在遇到断电的情况会出现数据不一致问题(如,硬盘本身带有写回缓存,默认也是启用的,断电同样的有问题;磁盘阵列控制卡也带有比较多的缓存),写回缓存的主要作用是能对随机读写,起到优化作用。
ubuntu下:可以通过 sudo tune2fs -o journal_data_writeback /dev/hdx..来启用写回机制
注意:不要在/etc/fstab直接增加data=writeback的mount参数,会出现EXT3fs cannot change data mode on remount的错误

2.noatime
在读取,写文件时,文件系统会写入文件的访问时间,通过指定noatime,可以省略写入读取文件的访问时间(注意,可能影响一下软件的正常运行),在/etc/fstab可以指定noatime,如下:
/dev/hda5      /media/hda5   ext3 defaults,noatime 0 2

其它优化手段,如果内存很大,可以控制swappness参数到20,减少应用的内存被交换到交换分区中,默认是60,因情况太复杂,这个参数的调整很难有普适的效果。
使用内存来优化:tmpfs具备先使用内存->然后使用swap的特性,/dev/shm就是这种类型,可以适当利用,重启后数据丢失。

基本检测手段
检测硬盘的读效率:hdparm -tT /dev/hda。
检测硬盘的写效率:time dd if=/dev/zero of=/media/hda5/tmp/my-file bs=4k count=65536
写入字符到/media/hda5/tmp/my-file文件,bs为块大小,count为快数
系统IO情况:vmstat,如果wa大说明瓶颈在io上。iostat用于监视io情况
分享到:
评论

相关推荐

    Linux Cgroup 技术 与 智能手机系统 IO 优化

    Linux Cgroups(控制组)技术是Linux内核的一个功能,旨在限制、记录、隔离和...总之,Cgroups技术在Linux系统中的应用范围非常广泛,尤其在虚拟化环境及智能手机资源管理中,它提供了一种高效、可控的资源分配机制。

    linux IO优化

    ### Linux IO优化详解 #### 一、Linux IO调度器概览 Linux系统中的IO调度算法是操作系统内核的重要组成部分,负责管理和调度磁盘I/O请求,以提高系统的整体性能。根据不同的应用场景,Linux提供了多种I/O调度算法...

    漫谈linux文件IO

    通过深入理解 Linux 文件 I/O 的各个层面及其工作原理,我们可以更有效地优化应用程序中的 I/O 操作,进而提升整个系统的性能。无论是选择合适的缓冲策略,还是利用特定的技术如 `mmap` 或 `O_DIRECT`,都需要根据...

    Linux下IO读写工具abu-1.0

    `ru`(run time)和`adu`(average disk utilization)是经典的Linux系统监控工具。`ru`用于收集和显示系统运行时的资源使用统计信息,包括CPU使用率、内存利用率等。而`adu`则专注于磁盘I/O性能,可以监测磁盘的...

    linux文件IO编程ppt

    在Linux系统中,文件I/O(Input/Output)编程是开发者必须掌握的重要技能之一,尤其对于系统级编程和驱动开发人员来说更为关键。本讲座主要围绕"Linux文件IO编程"展开,由知名的教育机构华清远见出品,质量可靠,...

    linux下IO口驱动(2)

    在现代Linux系统中,GPIO(通用输入/输出)接口广泛用于控制IO口。GPIO框架提供了一套标准的API,使得驱动程序可以方便地注册、配置和操作GPIO引脚。配置GPIO引脚为输出模式后,即可设置其电平高或低,实现对IO口的...

    Linux系统编程教程PPT

    **Linux系统编程教程PPT** 本教程集合了Linux系统编程的核心知识,涵盖了多个关键领域,旨在帮助学习者深入理解Linux操作系统及其编程接口。通过这些PPT资料,你可以系统地学习和掌握以下主要内容: 1. **计算机...

    在Linux系统中IO调度的选择

    ### 在Linux系统中IO调度的选择 #### I/O调度概述 在Linux系统中,I/O调度算法扮演着极其重要的角色,特别是在多个进程同时竞争磁盘I/O资源时。它负责优化请求的顺序和时机,以达到最佳的整体I/O性能。本文将详细...

    03linux内核IO性能优化及块BIO处理

    在Linux系统中,每个块设备都有一个与之关联的请求队列(request_queue),这是处理I/O请求的核心结构。在块设备初始化时,会分配并初始化这个请求队列,同时可以为驱动程序指定特定的IO调度算法,如noop、deadline...

    Linux IO数据通道我理解

    在Linux系统中,输入/输出(IO)数据通道的处理是一个复杂的过程,涉及到多个层次的协作与交互。了解这些层次及其工作原理对于深入理解Linux系统的IO机制至关重要。 1. **用户空间层**:应用程序通过标准的系统调用...

    linux磁盘io调度分析

    - CFQ 是一种公平的I/O调度算法,默认情况下被选为Linux系统的默认I/O调度器。 - 它通过时间片轮转的方式确保每个进程都有机会执行I/O操作,从而提高了整体的公平性。 - CFQ 特别适用于多媒体系统,例如播放音频或...

    Linux性能优化之IO子系统

    本文介绍了对LinuxIO子系统性能进行优化时需要考虑的因素,以及一些IO性能检测工具。本文的大部分内容来自IBMRedbook-LinuxPerformanceandTuningGuidelines文件系统是内核的功能,是一种工作在内核空间的软件,访问...

    Linux IO数据通道我理解之分享

    在Linux系统中,输入/输出(Input/Output,简称IO)操作是一项基础而重要的功能。为了更好地管理和优化IO操作,Linux内核设计了一套复杂的IO数据通道处理机制。这一机制主要由几个关键层次构成: 1. **用户空间与...

    Linux 文件IO编程-模拟登陆系统

    本项目"Linux 文件IO编程-模拟登陆系统"旨在通过实践,让开发者深入理解如何利用C语言进行文件操作,并结合Linux图形库curses实现一个简单的用户交互界面。下面将详细介绍这个项目涉及的关键知识点。 1. 文件IO编程...

    python Linux-IO分析代码脚本.docx

    在运维工作中,监控Linux服务器的IO性能是至关重要的任务,这有助于我们及时发现并解决系统瓶颈,优化服务器性能。本文将详细介绍一个使用Python编写的脚本,该脚本可以分析Linux服务器的IO进程,并按照读写情况进行...

    linux io层次图

    I/O 调度器是 Linux 内核的重要组件之一,它的主要职责是对 I/O 请求进行调度,以优化 I/O 性能。Linux 提供了多种 I/O 调度器,包括 deadline、cfq 和 noop 等。这些调度器根据不同的工作负载特性,采用不同的算法...

    Linux系统性能优化经验.pdf

    Linux系统性能优化是一个涵盖多个层面的复杂任务,包括硬件配置、操作系统设置以及应用程序的优化。以下是对标题和描述中提到的知识点的详细说明: 1. **系统硬件资源优化**: - **CPU**:对于多核CPU,若发现业务...

    linux异步IO.pdf

    ### Linux异步IO详解 #### 引言 在Linux环境下,输入/输出(I/O)操作是系统资源管理和数据交互的核心部分。传统上,Linux采用的最常见I/O模型是同步I/O,其中应用程序在发出请求后会阻塞,直至请求完成。然而,...

Global site tag (gtag.js) - Google Analytics