搜索引擎Killed原因排查
问题描述
腾讯云单核2G内存,运行程序的时候,程序有时会挂掉了,设置ulimit -c unlimited之后,想要core文件,结果程序运行的时候,直接提示killed,没有出现core文件
调研查询
killed的原因多是因为内存不足了,系统自动将程序杀死,此时没有出现core文件
使用free -h查看内存使用情况
[root@VM_125_247_centos server]# free -htotal used free shared buff/cache available
Mem: 1.8G 699M 325M 424K 814M 963M
Swap: 0B 0B 0B
可用空间还有325M,自己的服务器在使用的时候,每次会将倒排索引的文件加载到内存中,如果是高并发的情况下,就会出现问题
我连续点击我的服务器网页,搜索内容,最后程序被killed了,然后打开系统的日志文件
vim /var/log/messages
搜索我的程序名search,发现如下内容,说明程序占用 内存过大,被killed掉了
317799 Aug 14 10:22:09 VM_125_247_centos kernel: Out of memory: Kill process 6280 (search) score 585 or sacrifice child
317800 Aug 14 10:22:09 VM_125_247_centos kernel: Killed process 6280 (search) total-vm:1628312kB, anon-rss:1133948kB, file-rss:156kB, shmem-rss:0kB
也可以使用top命令去查看某个单一进程使用内存的情况
top -p `pidof search`
search就是执行 程序的时候名称,此时top可以监控单个程序的运行状况
top指令含义
当我们使用top指令查看CPU使用情况的时候,会显示如下内容,各个字段的含义解释一下
%Cpu(s): 4.4 us, 1.7 sy, 0.0 ni, 93.6 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st
us 列显示了用户模式下所花费 CPU 时间的百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,需要考虑优化用户的程序
sy 列显示了内核进程所花费的cpu时间的百分比。这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足。
ni 列显示了用户进程空间内改变过优先级的进程占用CPU百分比。
id 列显示了cpu处在空闲状态的时间百分比。
wa 列显示了IO等待所占用的CPU时间的百分比。这里wa的参考值为30%,如果wa超过30%,说明IO等待严重,这可能是磁盘大量随机访问造成的,也可能磁盘或者磁盘访问控制器的带宽瓶颈造成的(主要是块操作)。
hi 硬件中断占用CPU
si 软件中断占用CPU
st 丢失时间占用CPU
内核机制
内存不足触发了Linux内核的OOM机制Linux 下有个特性叫作 OOM killer(Out of Memory),从字面的意思可以看出和内存溢出相关,当内存耗尽时,该问题就会出现。在Linux2.6.内核中,当该功能打开后,在内存耗尽时,会根据一定的值计算出一个合适的用户空间的进程给kill掉,以便释放更多的内存,保证整个系统的稳定运行。在系统的日志中通常会有下面的打印日志:Out of memory: kill process 959 (sshd) score 55 or a child。
搜索引擎Killed原因排查相关推荐
- 统计信息自动收集任务失效原因排查
环境:Oracle 11.2.0.3 RAC 问题:统计信息自动收集任务失效原因排查 1.查看自动任务的状态 2.进一步查看其它信息 3.解决问题 1.查看自动任务的状态 查看自动任务的状态,确认是e ...
- LAN9252 out端口识别不到的原因排查
LAN9252 out端口识别不到的原因排查(干货) 遇到的现象 TwinCAT 3识别不到下一级从站,out端口有问题 排查可能原因 捕获了out端口发出的波形失真 lan9252的65脚接地,没焊 ...
- ORA-12805: parallel query server died unexpectedly ORA-04030 (sort subheap,sort key) 原因排查与解决方法
ORA-12805: parallel query server died unexpectedly ORA-04030 (sort subheap,sort key) 原因排查与解决方法 参考文章: ...
- win10卸载电脑管家就蓝屏_Win10电脑蓝屏原因排查及解决方案
原标题:Win10电脑蓝屏原因排查及解决方案 Insider社区教程 最近,很多使用win10系统的小伙伴们遇到不带错误代码的蓝屏现象,让很多小伙伴们都不知道该如何解决问题,殊不知,不同的蓝屏代码代表 ...
- 【阿里云】阿里云磁盘异常爆满的原因排查及解决方法,df和du命令查看磁盘时结果不一致
[阿里云]阿里云磁盘异常爆满的原因排查及解决方法,df和du命令查看磁盘时结果不一致,虽然磁盘显示满了,但是通过du查询磁盘空间实际上空间并没有满 文章目录 一.阿里云磁盘空间满了如何查看 二.使用d ...
- 苹果cms采集后无法播放原因排查及解决教程
声明:除特殊声明外本站文档均由作者原创,转载请注明出处,原文地址:苹果cms采集后无法播放原因排查及解决教程 苹果cmsv10采集后无法播放黑屏原因排查,首先确定是否导入播放器,采集资源后如果没有添加 ...
- 使用scp局域网内传输文件速度很慢的原因排查
使用scp局域网内传输文件速度很慢的原因排查 1.问题 1.1 scp更改加密方式 1.2 app limited角度 2.尝试排查问题(解决方式) 2.1 电脑同时连接了wifi和有线(实验室有线网 ...
- Oracle查询提示 ORA-00933: SQL command not properly ended 原因排查
Oracle查询提示 ORA-00933: SQL command not properly ended 原因排查 问题描述 问题排查与解决 问题描述 一段sql语句,在postgre数据库中运行未出 ...
- Oracle查询提示 ORA-00933 SQL command not properly ended 原因排查
Oracle查询提示 ORA-00933: SQL command not properly ended 原因排查 问题描述 问题排查与解决 问题描述 一段sql语句,在postgre数据库中运行未出 ...
最新文章
- Redis入门到精通-Redis高级命令
- 【Linux】10.安装和开启ftp服务
- JavaWeb图书管理系统day01
- Cow Toll Paths(floyd变形)
- [C++11]可调用对象包装器function
- Integer 与 int 的区别
- 使用Thrift让Python为Java提供服务
- 实现对接顺丰业务的订单管理系统
- 微信小程序 解决disableScroll无法禁止小程序下拉的问题和视频铺满全屏尺寸
- 联想用u盘重装系统步骤_联想笔记本Y470 U盘重装系统过程教程
- office文档管理服务器编辑,office在线编辑方案
- onedrive搭建个人网盘
- 汇编语言之div命令
- java毕业设计摄影服务管理系统服务端mybatis+源码+调试部署+系统+数据库+lw
- 51nod 1629 B君的圆锥
- 怎样查看Redis的版本号
- 汽车计算机控制系统及其组成,汽车计算机控制系统的研究.doc
- 计算机体系结构的一知半解
- 我的作品 电子元件替换速查字典V5.0
- Python使用ffmpeg合成视频、音频
热门文章
- [摘录]代码优化规则
- jquery中如何以逗号分割字符串_百度知道
- 从瀑布模型、极限编程到敏捷开发
- portal认证 php,配置外置Portal认证示例(命令行)
- 硬盘显示容量和实际容量不符合_为啥我买的64G U盘实际只有57G?聊聊存储市场的“不足量”现象...
- tm matlab,[转载]关于matlab中textread
- python统计csv行数_对Python 多线程统计所有csv文件的行数方法详解
- 手机php转换txt,PHP 实现的将图片转换为TXT
- python pip指令_python 常用 pip 命令合集
- xiaohai.cf index.php,php des 加密 - 北京破小孩