0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

服务器上空闲内存不足是什么原因

Linux阅码场 来源:相遇Linux 作者:JeffXie 2021-09-17 09:38 次阅读

一天,有人报上了一个问题,发现一台服务器上空闲内存不足,slab占用了40多G,想知道什么原因,然后拉我进入在线会议远程看看。

我进入会议常规检测一番,于是想看看哪个slab占用内存比较多,直接上小脚本:

while sleep 1; do cat /proc/slabinfo | awk ‘{name=$1; size=$2*$4/4096; printf “%s %lu

”, name, size;}’ | sort -n -r -k 2 | head -n 20; echo “--------------”;done;

结果显示类似如下:

TCPv6 9347580 (单位:4K, 大约36G)

inode_cache 3519

ext3_inode_cache 3427

dentry 2285

kmem_cache 1389

sysfs_dir_cache 832

buffer_head 682

radix_tree_node 675

vm_area_struct 505

size-2048 500

task_struct 496

size-1024 464

。..

可以看到TCPv6占用了36G左右, 然后会议上有个负责业务应用的妹子问,能知道是哪个进程占用的吗?

我装着不忙地喝了一口百岁山,于是派上trace_event出场:(以下操作过程中全场安静,都盯着我的键盘输出)

首先通过/proc/slabinfo 查看到TCPv6 object size=1856,然后:

cd /sys/kernel/debug/tracing/echo ‘bytes_alloc==1856’ 》events/kmem/kmem_cache_alloc/filterecho 1 》 。/options/stacktracecat 。/trace

从。/trace中打印出的堆栈信息和进程号,确认是他们的业务进程xxx正在干什么事(已排除内存泄漏)

这时候妹子抢占了会上所有人的讲话,笑着说:“能把history打印出来吗?”,连续提醒了我三次,说想学习一下。《真是一个好学的童鞋 :-)》

这个时候本想顺道宣传一下我在阅码场发布的tracers视频课程,视频课程里面各个traces都有很详细的讲解和案例。

但是工作时间要体现一定的专业和严肃性,并没有宣传,如果她有机会能看到这篇公众号之后再去订阅会更好:-)

最后我又喝下一口百岁山, 敲下history | tail -20 之后独自退出了会议。..

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    8112

    浏览量

    82497
  • 内存
    +关注

    关注

    8

    文章

    2767

    浏览量

    72756

原文标题:吸引住妹子的trace_event技术

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    cubeide创建项目时运行缓慢,弹出内存不足错误unhandled error java heap space怎么解决?

    如题,创建了一个非常简单的iic通讯工程,配置的时候非常煎熬,每点击一下要等待几秒钟,cpu占用拉满,配置完成构建项目等待几秒之后报错内存不足错误unhandled error java heap
    发表于 04-01 08:08

    站群服务器需要多大内存

    站群服务器内存需求取决于网站的数量和流量,以及服务器需要运行的应用和服务。RAKsmart小编为您整理发布站群服务器需要多大
    的头像 发表于 03-04 09:48 167次阅读

    服务器远程不上服务器怎么办?服务器无法远程的原因是什么?

    产生问题的原因,检查硬盘和服务器系统。通过日志和检查数据来确认问题出 现的原因以及如何解决。 三、端口问题 1.端口错误 找回正确的端口或更换远程端口 2.端口被扫爆 更改端口,并在防火墙禁止扫爆的IP
    发表于 02-27 16:21

    linux服务器和windows服务器

    ,这在满足个性化需求和增强服务器安全 性上具有优势。 Linux服务器还具有出色的性能和稳定性。相比之下,Windows服务器在性能和稳定性方面稍有不足。特别是在处理高负载和 大数据量
    发表于 02-22 15:46

    如何远程登录云服务器?登录失败是什么原因

    我用Linux云服务器,遇到了有关远程登录的一些问题,于是搜索了一些资料,整理了一篇文档,作为记录。如果你也遇到过 相似的问题,欢迎一起探讨! 一、Linux云服务器的远程登录 远程登陆linux
    发表于 02-01 15:32

    dns网络服务器未响应是什么原因

    DNS网络服务器未响应是指在使用域名解析服务时,用户的计算机或设备无法获取到有效的响应。通常情况下,这可能是由于以下原因导致的。 DNS服务器故障:DNS
    的头像 发表于 01-11 10:39 7627次阅读

    内存不够用的处理方法

    方法来处理内存不足的问题。本文将详细介绍内存不足原因以及解决的方法。 1. 了解内存不足原因 首先,我们应该了解
    的头像 发表于 12-28 11:15 381次阅读

    docker内存不足的解决办法

    审查Docker容器的内存使用情况: 首先,我们需要审查Docker容器的内存使用情况,以确定它是由哪个容器引起的内存不足问题。命令"docker stats"可以用来查看容器的资源使用情况,包括
    的头像 发表于 11-23 10:41 974次阅读

    2812加个printf就提示RAM不足什么原因

    2812加个printf就提示RAM不足什么原因
    发表于 09-27 06:00

    独立服务器崩溃的几种原因

    我们都知道服务区崩溃会给我们造成很大的影响,这些问题不仅是小型企业所要面临的,像视频播放、直播、电商的网站都会遭遇到独立服务器突然崩溃的突发问题。那么我们就要知道什么原因可以导致独立服务器
    的头像 发表于 05-11 14:10 417次阅读

    ESP8266从Littlefs加载文件时它崩溃了的原因

    在我的 ESP8266 中获得了一个带有大量 javascript 的网络服务器的程序。 当我尝试从 Littlefs 加载文件时它崩溃了。这可能不是原因,但是,我遇到了内存不足的 OOM。 所以
    发表于 05-10 09:24

    lua程序太长,内存不足无法通过node.compile()编译怎么解决?

    我的lua程序太长,内存不足无法通过node.compile()编译。我需要在 PC-Windows 中编译它。我承认我不明白推荐的程序 我整天都在看,但是我找不到解决办法。任何人都可以详细描述我的程序吗?谢谢
    发表于 04-28 07:20

    运行mqtt和net:server出现内存不足错误是什么原因

    main .lus) E:M 592 PANIC: 2013 年 1 月 8 日调用 Lua API 时出现不受保护的错误(内存不足) ets,第一个原因:2,引导模式:(3,6) 加载
    发表于 04-27 08:51

    NodeMCU ESP01内存不足怎么解决?

    所以我已经为我的 NodeMCU ESP01 构建了一个小型网络服务器一段时间了,几个月来它一直在完美地为我的 HTML 页面提供服务。但是突然间,它开始抛出内存不足错误,指的是包含 的行。我一次
    发表于 04-27 06:46

    lua网络服务器连续几个文件时它会失败是为什么?

    服务器连续几个文件时它会失败,开始出现内存不足错误会检查你的并提供反馈,顺便说一句什么是加密模块需要在你的服务器
    发表于 04-27 06:17