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

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

    关注

    14

    文章

    10353

    浏览量

    91742
  • 内存
    +关注

    关注

    9

    文章

    3234

    浏览量

    76506

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    运行测试程序以读取通过受信任应用程序 (TA) 存储的安全 blob 时,内存不足怎么解决?

    当我运行测试程序以读取通过受信任应用程序 (TA) 存储的安全 blob 时,我遇到了内存不足 (OOM) 问题。 我仔细观察了代码,但没有发现任何内存漏洞。 测试程序读取对称密钥,并通过 TA
    发表于 04-10 10:52

    Visionfive 2 上运行 Minecraft 服务器不断崩溃是什么原因

    我见过有些人在他们的 visionfive 2 上运行服务器,我也试图让 Visionfive 2 上运行 minecraft 服务器,但它非常慢(大约 15 分钟的启动时间),并且服务器由于
    发表于 03-18 06:56

    网络授时服务器 ntp时间服务器品牌 校时服务器厂家#电工

    服务器
    jf_47371611
    发布于 :2026年02月11日 17:53:43

    Linux下扩充Swap交换空间:解决内存不足的实用指南,这些影响要注意!

    大家在使用 Linux 系统(比如常用的 Ubuntu)时,是不是偶尔会遇到 “内存不足” 的弹窗?比如运行大型编译任务、多开虚拟机、做数据分析,或者把 Linux 当服务器用的时候,物理内存一旦 “告急”,系统就会卡顿甚至崩溃
    的头像 发表于 02-09 16:33 516次阅读
    Linux下扩充Swap交换空间:解决<b class='flag-5'>内存不足</b>的实用指南,这些影响要注意!

    Linux Swap交换空间详解:Android编译内存不足?这样扩充立竿见影

        在  Linux  系统使用过程中,你是否遇到过  “ 内存不足 ”  的报错?比如编译  Android  源码时,明明按教程操作,却因物理内存没达到  16G  要求而编译中断?这正是
    的头像 发表于 12-06 08:10 4549次阅读

    NTP授时服务器界的火力不足恐惧症

    服务器
    西安同步电子科技有限公司
    发布于 :2025年11月12日 17:18:07

    空闲线程堆栈出现内存溢出的问题,怎么解决?

    rtthread版本: 5.1.0 硬件: stm32f407vgt6 具体我也不知道什么原因引起的, 目前将堆栈调到1024后能为稳定运行 更新 设置1024堆栈, 运行久了也不行 我有什么操作会影响到空闲线程?
    发表于 10-11 10:36

    串口OTA在线升级及内存不足原因

    项目MCU的型号是STM32F103ZET6,ROM大小512,RAM大小64KB,所以目前没查到是什么原因造成的。之前是用3072测试OK的,后来因为功能增加所以增加了一些变量,及逻辑代码。然后就
    发表于 09-17 08:01

    服务器数据恢复—服务器断电导致raid模块损坏的数据恢复案例

    某品牌服务器中有12块硬盘,组建了一组raid5磁盘阵列,服务器内存储的是普通文件。 机房供电不稳定导致服务器断电,管理员重启服务器后发现
    的头像 发表于 09-04 12:57 1041次阅读

    华纳云服务器角色服务器失败的原因和解决办法

    是常见的,这可能导致数据丢失、系统停机和效率降低等严重后果。因此,了解服务器角色故障的原因和影响,并采取有效的预防措施,对于确保业务连续性和数据安全性至关重要。 一、服务器角色故障的原因
    的头像 发表于 07-17 18:18 695次阅读

    欧洲服务器免费ip地址怎么获取?#欧洲服务器 #免费IP地址 #服务器

    服务器
    jf_57681485
    发布于 :2025年06月13日 11:15:04

    恒讯科技深度解析:阿帕奇服务器工作原理

    其技术内核。 一、多进程架构与请求处理 阿帕奇采用预派生子进程模型(Prefork MPM)作为默认工作模式。服务器启动时,主控制进程会预先生成多个子进程处于空闲状态,当用户请求到达时,主进程将请求分配给空闲子进程处理,避免频繁
    的头像 发表于 05-22 09:37 2110次阅读

    国外bgp服务器多少钱?# 服务器

    服务器
    jf_57681485
    发布于 :2025年04月24日 14:19:00