一个cp命令引发的mongodb大量慢查询
遇到问题:凌晨收到报警,某mongodb服务器cpu load超过8。由于没有影响到业务,第二天一早开始查原因。
查原因:
1. 先了解该服务器上的应用有哪些
该db服务器主要应用只有mongodb。于是开始查询mongodb日志:
通过凌晨的日志mongodb.log查看,有大量的慢查询,但实际上这些表都非常小,只有几百行数据,而且表还有索引,却仅仅一个查询花了60~80s,慢查询之后的日志显示该节点不被其他节点检测到(mongodb复制集形式)。
由于一个小表的查询都需要判断70s左右,而且mongodb部署的是复制集形式(其他的查询节点都是正常的)可以判断,可能是这台db的性能方面影响了mongodb,而非mongodb本身的性能影响。
crontab -l 发现确实凌晨有一个任务。是一个切割日志的脚本。大概就是把日志cp到另一个目录,然后将当前日志清空,继续记录新的一天的日志。
但这个日志平时都较小,也运行了很长时间.只能试一试的看看日志目录
看到日志突然就这么大了。难道是因为晚上cp 文件的时候导致了?
差不多判断问题出现在 cp导致了io负载过高,进而导致了cpu load 过高。
由于该操作在夜间操作,未影响线上业务。故手动操作cp,复现问题。
cp 了一个近3g的文件, 如下图:看到产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。
跟着cpu load也 上升到10 (每一分钟的cpu load 值)左右。
将小日子日志脚本切割改为系统logrotate切割。logrotate会在系统空闲的状态进行操作。
一个cp命令引发的mongodb大量慢查询相关推荐
- linux系统编程:自己动手写一个cp命令
cp命令的基本用法: cp 源文件 目标文件 如果目标文件不存在 就创建, 如果存在就覆盖 实现一个cp命令其实就是读写文件的操作: 对于源文件: 把内容全部读取到缓存中,用到的函数read 对于目标 ...
- 每天一个linux命令(8):cp 命令
cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是 ...
- 【每天一个 Linux 命令】Linux命令ls和cp
ls(英文全拼:list files)命令用于显示文件目录列表,和Windows系统下DOS命令dir类似.当执行ls命令时,默认显示的只有非隐藏文件的文件名.以文件名进行排序及文件名代表的颜色显示. ...
- linux命令 复制文件夹命令行,(转)每天一个linux命令(8):cp 命令,复制文件和文件夹...
场景:自动部署脚本中为了部署方便,将配置文件放在服务器端,每次部署都使用服务端的配置文件覆盖上传上去的配置文件. cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一. 一般情况下,she ...
- linux cp拷贝一个文件到另一个目录,cp命令复制文件夹到另一个文件夹的注意事项 - 翟码农技术博客...
最近发现之前写好的shell脚本里cp命令拷贝文件夹,丢失了一层文件夹.才发现cp命令里还有一层这么容易让人混淆的用法,为避免继续踩坑,特此记载. 现在假定文件存在的目录如下面所示: --from - ...
- 每天学一个 Linux 命令(89):alias/unalias
点击下方"民工哥技术之路",选择"设为星标" 回复"1024"获取独家整理的学习资料! 命令简介 alias 命令用来设置指令的别名. un ...
- Linux---scp、cp命令
scp就是secure copy,一个在linux系统下用来进行远程拷贝文件的命令.cp命令和其相似,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的. cp - 主要是用于在同一台电脑 ...
- 谈谈Linux系统CP命令如何做到0.2秒复制100G大文件?
谈谈Linux系统CP命令如何做到0.2秒复制100G大文件? 文章目录 谈谈Linux系统CP命令如何做到0.2秒复制100G大文件? cp 引发的思考 文件系统 为什么 cp 那么快? 结语 cp ...
- linux cp 目录不存在自动创建,关于linux:Linux技巧cp命令自动创建不存在的目录和只复制修改的文件...
复制时主动创立不存在的子目录 在 Linux 中,能够应用 cp 命令的 --path 选项指定在复制的时候主动创立不存在的子目录. 例如执行上面的命令: $ cp --path java/com/s ...
- ubutun:从共享文件夹拷贝文件尽量使用cp命令而不是CTRL+C/V
为了方便,VBOX安装的Ubuntu,并在硬盘上创建了一个与Windows的共享文件夹sharefolder方便在两个系统之间传文件 但是经常发现的问题就是从sharefolder中拷贝文件到ubun ...
最新文章
- java培训:什么是抽象类?怎么定义?
- Docker 简介以及构架剖析
- 【 转 】Keepalived工作原理
- java平均差_如何做好描述统计分析
- sklearn自学指南(part31)--半监督学习
- java没有对象可以调用方法吗_在没有括号的情况下调用Java中的新对象的方法:操作顺序违规?...
- ubuntu 搜狗安装搜狗输入法(fcitx)亲测有用
- FreeRTOS+STM32F103串口通信错误解决方法
- 芦溪中学2021高考成绩查询,2021萍乡市地区高考成绩排名查询,萍乡市高考各高中成绩喜报榜单...
- Android MediaCodec硬编码H264文件(四)
- ApplePay 支付开发
- 2019.7月面试题总结(三)
- Relatively Prime Graph(贪心+注意数据范围)
- 平面设计构成原理分享
- 数学物理方法 数学物理方程
- 鸿蒙os系统测评,鸿蒙OS 2首批评价出炉,看已升级用户都怎么说的
- 使用ajax技术对内容进行修改,使内容回显到组件框中
- 【Linux】嵌入式Linux系统的移植(上篇:交叉编译器、连接方式)
- 【C语言】实现两个字符串的连接(不使用库函数),即把字符串b连接到字符串a后面。
- Linux运维基础进阶——PPT汇总
热门文章
- Atitit 数据处理查询 中的异常标准化草案 jpa jdbc hb oql规范attilax总结
- atitit.验证码识别step2------剪贴板ClipBoard copy image图像 attilax总结
- atitit. java跟php的比较..为什么大企业喜欢java 而不是php
- paip.手写OCR识别方法总结--基于验证码识别... 1
- paip. VS2010版本控制tfs使用总结
- paip.asp vbs的代码折叠代码结构查看
- 基金公司十大非货规模逆袭(2010-2020)
- (转)黑石帝国崛起的30年
- 快讯丨业界首本云网络图书发布
- 性能优化:缓存使用的秘密