如何减少服务器上rsync 的io磁盘与主服务器io 占用的问题

简介:

对于服务上rsync 的io磁盘与主服务器io 占用的问题,我们可以采用ionice来进行有效解决:


服务器是一台做数据分析的BI服,每天同步的数据文件有上万个,目录下也占用了很多零碎的目录和文件,遍历起来也很费劲,本身以前购买的磁盘又不是IO很好的磁盘,文件一多更是很慢了,虽然不占用CPU,但是CPU处于繁忙中了 (idle 99%,wa 1%),当服务器中需要运行大量的数据文件时,服务器的Io磁盘就会出现被占用的情况,导致服务器在处理数据时响应会减慢,介绍一下如何减少服务上rsync 的io磁盘与主服务器io 占用的问题。

 

  如何减少rsync主服务器的io占用:


  解决方法:在启用服务器上的rsync时,我们可以采用进行降低IO使用的设置:ionice -c 2 -n 7 rsync --daemon

 

  如何降低rsync的io磁盘占用

root@ip-172-31-19-100 ~]# ps -ef|grep rsync

root      2261  2185  0 10:26 pts/2    00:00:00 grep rsync

root     14065  5656  0 07:03 ?        00:00:16 rsync --daemon

root     14066 14065  0 07:03 ?        00:00:02 rsync --daemon

root     27198  5656  0 08:33 ?        00:00:08 rsync --daemon

root     27199 27198  0 08:33 ?        00:00:01 rsync --daemon

root     29260  5656  0 09:03 ?        00:00:06 rsync --daemon

root     29261 29260  0 09:03 ?        00:00:01 rsync --daemon


14065,27198,29260 三个PID

  当rsync --daemon已经在运行并不想停止时,这时我们可以: 找到服务器上的rsync的PID,如 14065,使用ionice降低进程14065的IO占用:ionice -c 2 -n 7 -p 14065


其他PID 

ionice -c 2 -n 7 -p 27198

ionice -c 2 -n 7 -p 29260 

 

  Ionice命令功能介绍

  ionice – 获取或设置程序的IO调度与优先级。

 

  命令格式:

  ionice [[-c class] [-n classdata] [-t]] -p PID [PID]…

  ionice [-c class] [-n classdata] [-t] COMMAND [ARG]…

 

  IO调度策略:

 

  ionice将磁盘IO调度分为三类:

  ilde:空闲磁盘调度,该调度策略是在当前系统没有其他进程需要进行磁盘IO时,才能进行磁盘;因此该策略对当前系统的影响基本为0;当然,该调度策略不能带有任何优先级参数;目前,普通用户是可以使用该调度策略(自从内核2.6.25开始)。

 

  Best effort:是缺省的磁盘IO调度策略;

  (1)该调度策略可以指定优先级参数(范围是0~7,数值越小,优先级越高);

  (2)针对处于同一优先级的程序将采round-robin方式;

  (3)对于best effort调度策略,8个优先级等级可以说明在给定的一个调度窗口中时间片的大小。

  (4)目前,普调用户(非root用户)是可以使用该调度策略。

  (5)在内核2.6.26之前,没有设置IO优先级的进程会使用“none”作为调度策略,但是这种策略使得进程看起来像是采用了best effort调度策略,因为其优先级是通过关于cpu nice有关的公式计算得到的:io_priority = (cpu_nice + 20) /5。

  (6)在内核2.6.26之后,如果当前系统使用的是CFQ调度器,那么如果进程没有设置IO优先级级别,将采用与内核2.6.26之前版本同样的方式,推到出io优先级级别。Real time:实时调度策略,如果设置了该磁盘IO调度策略,则立即访问磁盘,不管系统中其他进程是否有IO。因此使用实时调度策略,需要注意的是,该访问策略可能会使得其他进程处于等待状态。

 

  参数说明:

  -c class :class表示调度策略,其中0 for none, 1 for real time, 2 for best-effort, 3 for idle。

  -n classdata:classdata表示IO优先级级别,对于best effort和real time,classdata可以设置为0~7。

  -p pid:指定要查看或设置的进程号或者线程号,如果没有指定pid参数,ionice will run the listed program with the given parameters。-t :忽视设置优先级时产生的错误。

 

  以上就是如何减少服务器上rsync 的io磁盘与主服务器io 占用的问题的相关介绍,当用户租用的服务器上出现响应变慢的情况出现时,可能是服务器上rsync的io 被占用而造成的,这时我们就可以利用ionice 来进行进程上的释放来解决相关问题标准,如果用户想在价格和保证上进行衡量,可以对服务商的服务器进行使用来决定。



-----------------------

以上仅供参考!!

其实,其实上面的方法也没有起到多大作用,io还是占有很大

iotop看那了下,磁盘的写入都慢了很多

最根源的方法就是把下面有很多目录的文件迁移点到其他备份目录下,减少遍历更多的文件夹,可以减轻IO, mv了旧的目录到其他备份目录下, 减轻了有写入的目录IO,一下子cpu就不繁忙了,磁盘写入也快了(通过iotop可以查看到写入速度和之前的不一样)



本文转自 holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/1977316

相关文章
|
2月前
|
缓存 运维 Linux
Linux系统调优详解(十二)——IO调优之磁盘测速
Linux系统调优详解(十二)——IO调优之磁盘测速
58 1
|
2月前
|
网络协议 安全 测试技术
手撕测试tcp服务器效率工具——以epoll和io_uring对比为例
手撕测试tcp服务器效率工具——以epoll和io_uring对比为例
41 2
|
3月前
|
存储 网络协议
TCP服务器 IO多路复用的实现:select、poll、epoll
TCP服务器 IO多路复用的实现:select、poll、epoll
35 0
|
2月前
|
弹性计算
2024阿里云幻兽帕鲁/Palworld服务器价格表(CPU/内存/带宽/磁盘收费标准)
2024年阿里云幻兽帕鲁专用服务器的价格根据不同的配置有所不同。 • 4核16G配置的价格为32元/月,如果选择购买3个月,则价格为96元。 • 8核32G配置的价格为90元/月,如果选择购买3个月,则价格为271元。 另外,还有配置为4核16G10M带宽的服务器,其价格为26元/月起。而8核32G10M带宽的价格也是90元/月。
95 1
|
13天前
|
Linux
Linux操作系统调优相关工具(三)查看IO运行状态相关工具 查看哪个磁盘或分区最繁忙?
Linux操作系统调优相关工具(三)查看IO运行状态相关工具 查看哪个磁盘或分区最繁忙?
21 0
|
2月前
|
运维 Linux
Linux系统调优详解(五)——磁盘IO状态查看命令
Linux系统调优详解(五)——磁盘IO状态查看命令
49 5
|
2天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
30天前
|
Java 关系型数据库 MySQL
Flink1.18.1和CDC2.4.1 本地没问题 提交任务到服务器 报错java.lang.NoClassDefFoundError: Could not initialize class io.debezium.connector.mysql.MySqlConnectorConfig
【2月更文挑战第33天】Flink1.18.1和CDC2.4.1 本地没问题 提交任务到服务器 报错java.lang.NoClassDefFoundError: Could not initialize class io.debezium.connector.mysql.MySqlConnectorConfig
49 2
|
2月前
|
弹性计算 大数据 测试技术
2024年阿里云服务器价格购买价格表(实例配置价格+磁盘价格+网络宽带价格)
2024年阿里云服务器价格购买价格表来了!2024年阿里云服务器租用费用,轻量应用服务器和云服务器ECS优惠价格表,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服务器30元3个月,幻兽帕鲁4核16G和8核32G服务器配置,云服务器ECS可以选择经济型e实例、通用算力u1实例、ECS计算型c7、通用型g7、c8i、g8i等企业级实例规格。今天分享阿里云服务器租用费用最新报价:
67 2
|
2月前
|
弹性计算 大数据 测试技术
阿里服务器租用多少钱一年?阿里云服务器租用价格表(最新CPU/内存/带宽/磁盘收费标准)
阿里服务器租用多少钱一年?阿里云服务器租用价格表(最新CPU/内存/带宽/磁盘收费标准)。阿里云服务器的租用费用因实例类型、地域、配置等因素而有所不同,价格范围可以从几百元到几千元不等。2024年阿里云服务器租用费用价格表更新,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服务器30元3个月,幻兽帕鲁4核16G和8核32G服务器配置,云服务器ECS可以选择经济型e实例、通用算力u1实