首页 > 系统相关 >linux排查命令

linux排查命令

时间:2023-07-20 21:11:06浏览次数:38  
标签:10 thread 命令 redis 排查 线程 linux

都是高频好用的定位排查命令,冷知识:可以远程debug tomcat

1,top
2,top -Hp 12798 查看比较耗资源的线程
3,jstack 12798 |grep 12799的16进制 31ff -A 10 -B 10
查看堆空间,上下10行


4,ssh 服务器 安装 arthas ,(Arthas 是Alibaba开源的Java诊断工具)
执行thread命令。thread -428 线程堆内存
发现所有线程都在等 @53e5504e这个对象释放锁。jstack 全局搜53e5504e ,没找到这个对象所在线程

5,再次执行 arthas 的thread -b (thread -b, 找出当前阻塞其他线程的线程),无结果
目前只支持找出synchroized关键字阻塞住的线程,暂时不支持java.util.concurrent.lock.

6,修改redis pool 配置,将获取连接超时时间设置为2s,然后等问题再次复现时观察应用最后正常时干过什么。
重启服务等待。又过一天,再次复现。
ssh 服务器,检查tomcat accesslog ,发现大量api 请求出现500,

7,代码分析:stringRedisTemplate.getConnectionFactory().getConnection()获取pool中的redisConnection后,并没有后续操作
redis 连接池中的链接被租赁后并没有释放或者退还到链接池中,状态本应该是idle,但目前是allocated
总结:spring stringRedisTemplate 对redis常规操作做了一些封装,但还不支持像 Scan SetNx等命令,这时需要拿到jedis Connection进行一些特殊的Commands

标签:10,thread,命令,redis,排查,线程,linux
From: https://www.cnblogs.com/qingmaple/p/17569680.html

相关文章

  • 鲲鹏920ARM架构的Linux系统运行的docker-compose
    实现鲲鹏920ARM架构的Linux系统运行的docker-compose作为一名经验丰富的开发者,我很乐意指导你如何实现鲲鹏920ARM架构的Linux系统运行的docker-compose。下面是整个过程的步骤:步骤说明步骤一安装Docker步骤二配置鲲鹏920的ARM架构环境步骤三安装docker-compo......
  • Linux常用指令
    一、复制、移动、删除1、复制cp:cp[选项]源文件或目录目标文件或目录复制文件:cptt1复制文件夹:cp-rdirdir1命令格式:cp[-adfilprsu]源文件(source)目标文件(destination)cp[option]source1source2source3...directory参数说明:-a:是指archive的意思,也说是......
  • ssh免密码和ssh-copy-id命令
    linux系统配置免密码的方式:1:ssh-keygen -t rsa生成密钥2:ssh-copy-id-i~/.ssh/id_rsa.pubjifeng@jifeng02把本机的公钥追到jifeng02的 .ssh/authorized_keys里3:测试1.[[email protected]]$sshjifeng022.Lastlogin:ThuAug716:37:552014fromjifeng04......
  • Linux系统安装CH341驱动
    Linux系统安装CH341驱动Linux系统(这里以ubuntu20.04为例)本身会自动安装CH340驱动,随着时间的推移,旧版本的驱动已经无法支持当下的CH340模块,所以我们需要重新安装驱动。以下是安装驱动的步骤:一、下载驱动包前往官网下载压缩包:Linux版CH341驱动;点击“下载”按钮即可二、解压......
  • Linux系统如果关闭掉MySQL会出现什么问题
    Linux系统如果关闭掉MySQL会出现什么问题MySQL是一种广泛使用的开源关系型数据库管理系统,它在Linux系统下被广泛应用于Web应用程序、服务器应用程序和各种大规模数据存储场景中。MySQL的正常运行对于系统的稳定性和数据的完整性至关重要。因此,关闭MySQL可能会导致一系列问题的出现......
  • Linux python 查找模块和版本号
    LinuxPython查找模块和版本号作为一名经验丰富的开发者,你需要教会一位刚入行的小白如何在Linux环境下使用Python查找模块和版本号。以下是一份详细的步骤和相应的代码注释,帮助他完成这个任务。步骤步骤描述步骤一打开终端步骤二运行Python交互式解释器步骤三......
  • Linux mysqlCPU
    实现"LinuxmysqlCPU"的步骤为了实现"LinuxmysqlCPU",我们需要按照以下步骤进行操作。下表展示了整个流程的步骤,并提供了每一步需要做什么,以及需要使用的代码及其注释。步骤操作代码注释1安装Linux操作系统无需代码确保你的计算机上已正确安装Linux操作系统2安......
  • 多个会话同时执行命令history记录不全的解决方案
    基本认识linux默认配置是当打开一个shell终端后,执行的所有命令均不会写入到\~/.bash\_history文件中,只有当前用户退出后才会写入,这期间发生的所有命令其它终端是感知不到的。问题场景那么问题来了,假若之前history命令记录为c0,用户先打开了shell终端a,执行了一部分命令c1,又打开了一......
  • linux账号登录错误次数过多解锁
    [root@inmnmapp50~]#pam_tally2--userOSS3_JC_BSLoginFailuresLatestfailureFromOSS3_JC_BS32207/20/2317:50:1410.135.7.152[root@inmnmapp50~]#pam_tally2--userOSS3_JC_BS--resetLoginFailuresLatestfai......
  • Windows与Linux各占鳌头!
    导读最坚决推行 Linux 桌面系统项目的城市正在转回Windows阵营,但Linux的命运已经不再与PC休戚相关。在实施从Windows系统迁移到Linux系统这一项目接近十年之久后,慕尼黑却突然走上了一条戏剧性的转弯。据说是到2021年,该城市的地方议会就会开始用Windows10......