java虚拟机jvm
运维打怪晋级之路
2011毕业以后就从事运维工作的,从一名职场新手通过自己的学习和工作中的总结慢慢提升自己的专业技能,目前在一家互联网公司做运维架构师,主要负责公司阿里云的服务器和服务的运维工作,之前在亚信科技从事过业务维护工程师、自动化运维工程师、报表稽核开发工程师,2016年转为报表开发工程师,2018年跳槽到一家互联网公司做高级运维工程师,主要负责公司系统的运维架构以及系统安全,目前我在一家国企任职高级运维工程师。我在工作中有耐心,抗压力、爱折腾,喜欢研究自动化工具,喜欢写一些博客技术分享。擅长linux系统、shell脚本、python脚本、ELK系统、JAVA系统调优、docker、k8s等。
展开
-
K8S容器缓存查看利器hcache的使用
缓存查看利器hcache的使用最近监控K8S的容器内存使用,发现有个容器一直在告警,此时说一下容器内存的监控,container_memory_working_set_bytes 容器使用内存 更能体现出mem usage,也是oom killer指标(建议使用),其实际组成为 RSS + Cache(最近访问的内存、脏内存和内核内存)。经查询是Cache使用的比较多,那么如何确认是那个缓存的导致的呢?使用容器缓存查看利器hcache完美解决。上传hcachehcache下载地址修改权限.原创 2021-09-13 18:02:32 · 1933 阅读 · 2 评论 -
Linux下删除乱码文件和目录的方法
方法1使用ls -i命令找到文件或目录的inode(i节点号)[root@gtcq-gt-monitor-prometheus-01 /]# ls -i 43012 " 64 boot 134217793 etc 402654488 home 82 lib64 134223423 mnt 1 proc 9767 run 402654489 srv 134217800 tmp 402653249.原创 2021-04-09 11:16:17 · 1226 阅读 · 1 评论 -
prometheus使用pushgateway监控网路丢包
监控网路丢包脚本[root@gtcq-gt-monitor-prometheus-01 ~]# timeout 50 ping -q -A -s 500 -W 1000 -c 1000 10.1.32.95|grep transmitted|awk '{print $6}'[root@gtcq-gt-monitor-prometheus-01 shell_script]# more icmp_gpu_monitor.sh #!/bin/bash####################.原创 2021-03-23 18:37:06 · 2723 阅读 · 3 评论 -
程序员如何读懂火焰图
#####1、 白话火焰图让我们回想一下我们一般是如何调试程序的,通常是在没有数据的情况下依靠主观臆断来瞎蒙,而不是考虑问题到底是什么引起的!毫无疑问,调优程序性能问题的时候,同样需要对症下药。好消息是 Linux 内核调优大师发明了火焰图,可以一针见血的指出程序的性能瓶颈,可以快速、准确地识别出最频繁的代码路径,但是很少人在使用火焰图。常见的火焰图类型有 On-CPU,Off-CPU,还有 Memory,Hot/Cold,Differential 等等。关于火焰图整个图形看起来就像一团跳动的火焰,这也原创 2021-03-19 18:15:06 · 4061 阅读 · 1 评论 -
C使用火焰图(FlameGraph)分析性能
安装yum install gityum -y install gccyum install perfgit clone git://github.com/brendangregg/FlameGraphecho 1 > /proc/sys/kernel/perf_event_paranoidecho 0 > /proc/sys/kernel/kptr_restrict编译C程序[root@localhost ~]# more test.c#include <stdio原创 2021-03-19 17:46:20 · 628 阅读 · 0 评论 -
java性能火焰图的生成
序言如果你经常遇到 Java 线上性能问题束手无策,看着线上服务 CPU 飙升一筹莫展,发现内存不断泄露满脸茫然。别慌,这里有一款低开销、自带火焰图、让你大呼好用的 Java 性能分析工具 - async-profiler。1、准备程序[root@localhost ~]# git clone git://github.com/jvm-profiling-tools/async-profiler[root@localhost async-profiler]# yum -y install gcc+原创 2021-03-19 17:44:59 · 1550 阅读 · 0 评论 -
Arthas-Java 问题定位的终极利器-火焰图
profiler 命令生成火焰图原理使用 async-profiler 生成火焰图profiler 命令支持生成应用热点的火焰图。本质上是通过不断的采样,然后把收集到的采样结果生成火焰图。profiler 命令基本运行结构是 profiler action [actionArg]查看所有支持的 action:[arthas@9737]$ profiler actionsSupported Actions: [resume, dumpCollapsed, getSamples, start,.原创 2021-03-18 19:27:57 · 3497 阅读 · 3 评论 -
Arthas-Java 问题定位的终极利器-快速入门
1、序言在使用 Arthas 之前,当遇到 Java 线上问题时,如 CPU 飙升、负载突高、内存溢出等问题,你需要查命令,查网络,然后 jps、jstack、jmap、jhat、jstat、hprof 等一通操作。最终焦头烂额,还不一定能查出问题所在。而现在,大多数的常见问题你都可以使用 Arthas 轻松定位,迅速解决,及时止战。2、Arthas 介绍Arthas 是 Alibaba 在 2018 年 9 月开源的 Java 诊断工具。支持 JDK6+, 采用命令行交互模式,提供 Tab 自动不全原创 2021-03-18 18:18:43 · 202 阅读 · 0 评论 -
JVM垃圾回收算法图解
JVM垃圾回收算法红色是标记的非活动对象,绿色是活动对象。标记-清除(Mark-Sweep)GC分为两个阶段,标记和清除。首先标记所有可回收的对象,在标记完成后统一回收所有被标记的对象。同时会产生不连续的内存碎片。碎片过多会导致以后程序运行时需要分配较大对象时,无法找到足够的连续内存,而不得已再次触发GC。复制(Copy)将内存按容量划分为两块,每次只使用其中一块。当这一块内存用完了,就将存活的对象复制到另一块上,然后再把已使用的内存空间一次清理掉。这样使得每次都是对半个内存区回收,也不用考虑原创 2020-07-01 17:45:24 · 360 阅读 · 2 评论 -
JAVAjdk1.6安装方法
一、安装创建安装目录,在/usr/java下建立安装路径,并将文件考到该路径下:# mkdir /usr/java1、jdk-6u11-linux-i586.bin 这个是自解压的文件,在linux上安装如下:# chmod 755 jdk-6u11-linux-i586.bin# ./jdk-6u11-linux-i586.bin (注意,这个步骤一定要在...原创 2016-03-30 14:28:05 · 709 阅读 · 1 评论 -
jvm与内存泄漏
命令:jstat -gcutil tomcat的pid 5000 查看JVM内存使用和垃圾回收情况JVM内存泄漏是性能故障的主要原因之一,由于JVM内存使用情况极易获取,我们将内存作为第一排查对象,在讲如何查看内存使用情况之前,先普及一下JVM内存结构和垃圾回收的相关知识: JVM内存结构:线程独享内存、线程共享内存线程共享内存:新生代(young Ge...原创 2019-04-09 17:00:48 · 143 阅读 · 1 评论 -
Devops自动化运维知多少系列-jvm与内存泄漏
今日热点jvm与内存泄漏jstat -gcutil tomcat的pid 5000查看JVM内存使用和垃圾回收情况JVM内存泄漏是性能故障的主要原因之一,由于JVM内存使用情况极易获取,我们将内存作为第一排查对象,在讲如何查看内存使用情况之前,先普及一下JVM内存结构和垃圾回收的相关知识:JVM内存结构:线程独享内存、线程共享内存线程共享内存:新生代(young Gen)、老年代(o...原创 2020-03-27 14:51:35 · 312 阅读 · 0 评论 -
Tomcat8性能JVM优化
JVM性能调优:常见 catalina.sh 配置汇总JAVA_OPTS="$JAVA_OPTS -server -Xms1024m -Xmx1024m -Xss256k -XX:+UseParallelOldGC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/heap_dump -XX:+PrintGCDetails -XX:+P...原创 2020-03-31 15:34:58 · 1122 阅读 · 1 评论