arthas 是阿里巴巴开源的强大的jvm 应该分析工具,以下是使用arthas 生成jvm 火焰图的一个学习

项目使用docker-compose 运行,对于生成的火焰图使用nginx 提供一个访问入口

环境准备

docker-compose 文件

version: "3"

services:

web:

image: openresty/openresty:alpine

ports:

- "8090:80"

volumes:

- "./flamegraph:/opt/mywebs"

- "./nginx.conf:/usr/local/openresty/nginx/conf/nginx.conf"

app:

build: ./

cap_add:

- ALL

ports:

- "8080:8080"

volumes:

- "./flamegraph:/usr/local/tomcat/arthas-output"

tomcat 集成arthas dockerfile

FROM tomcat

# copy arthas

COPY --from=hengyunabc/arthas:latest /opt/arthas /opt/arthas

nginx config

worker_processes 1;

user root;

events {

worker_connections 1024;

}

http {

include mime.types;

default_type application/octet-stream;

sendfile on;

lua_code_cache off;

lua_need_request_body on;

gzip on;

resolver 127.0.0.11 ipv6=off;

real_ip_header X-Forwarded-For;

real_ip_recursive on;

gzip_min_length 2k;

gzip_buffers 4 16k;

log_format compression '$remote_addr - $remote_user [$time_local] '

'"$request" $status $bytes_sent '

'"$http_referer" "$http_user_agent" "$gzip_ratio"';

gzip_comp_level 4;

gzip_types text/plain text/css image/png application/javascript image/jpeg image/gif;

server {

listen 80;

server_name _;

charset utf-8;

default_type text/html;

root /opt/mywebs;

location / {

default_type text/plain;

autoindex on;

}

location = /empty {

empty_gif;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

}

使用

启动

docker-compose up -d

进入tomcat 启动arthas

docker-compose exec app sh

java -jar /opt/arthas/arthas-boot.jar

选择进程id 默认为1

开启profiler

生成火焰图

profiler start

一个简单的压力测试

ab -n 20000 -c 200 http://localhost:8080/

停止profiler

profiler stop

查看火焰图

说明

以上是一个简单的学习使用,开启容器的profiler 需要添加cap 为了简单,添加了all,arthas 功能很强大,是一把利器,同时集成到docker

镜像中,可以方便的分析一些性能瓶颈

参考资料

火焰图分析openresty性能瓶颈

注:本文操作基于CentOS 系统 准备工作 用wget从https://sourceware.org/systemtap/ftp/releases/下载最新版的systemtap.tar.gz压缩包 ...

用 CPI 火焰图分析 Linux 性能问题

https://yq.aliyun.com/articles/465499 用 CPI 火焰图分析 Linux 性能问题   yangoliver 2018-02-11 16:05:53 浏览1076 ...

火焰图分析CPU性能问题

1.找出应用程序或内核消耗CPU的PID 2.执行perf record 命令,记录该PID的行为 perf record -a -g -p 14851 -- sleep 30 --30秒后退出 3. ...

perf + Flame Graph火焰图分析程序性能

1.perf命令简要介绍 性能调优时,我们通常需要分析查找到程序百分比高的热点代码片段,这便需要使用 perf record 记录单个函数级别的统计信息,并使用 perf report 来显示统计结果 ...

[转]perf + 火焰图分析程序性能

1.perf命令简要介绍 性能调优时,我们通常需要分析查找到程序百分比高的热点代码片段,这便需要使用 perf record 记录单个函数级别的统计信息,并使用 perf report 来显示统计结果 ...

perf + 火焰图分析程序性能

1.perf命令简要介绍 性能调优时,我们通常需要分析查找到程序百分比高的热点代码片段,这便需要使用 perf record 记录单个函数级别的统计信息,并使用 perf report 来显示统计结果 ...

Skynet服务热点火焰图分析

最近花了一周时间对场景服务进行热点分析,利用以前的火焰图工具做了一点微小的贡献,分享下心得(仓库地址在https://github.com/spin6lock/skynet_systemtap_set ...

使用FlameGraph火焰图分析JAVA应用性能

开源项目推荐 Pepper Metrics是我与同事开发的一个开源工具(https://github.com/zrbcool/pepper-metrics),其通过收集jedis/mybatis/ht ...

Linux下用火焰图进行性能分析【转】

转自:https://blog.csdn.net/gatieme/article/details/78885908 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...

随机推荐

iOS 字符串删除 DOM

iOS  string 删除 包含的 DOM NSMutableString *mutableString = [NSMutableString stringWithString:responseSt ...

Android自定义控件(二)

这一篇主要来讲一下自定义控件中的自定义viewgroup,我们以项目中最常用的下拉刷新和加载更多组件为例 简单介绍一下自定义viewgroup时应该怎么做. 分析:下拉刷新和加载更多的原理和步骤 自定 ...

HUST 1017 - Exact cover (Dancing Links 模板题)

1017 - Exact cover 时间限制:15秒 内存限制:128兆 自定评测 5584 次提交 2975 次通过 题目描述 There is an N*M matrix with only 0 ...

继续寻找app开发的技术方案

大概12年下半年开始,才有app开发已经来到身边的感觉. 但也一直只是感觉,没想到自己得亲身上阵. 由于要一个人做(帮朋友倒腾倒腾),而且要跨平台,而且前后台都要弄,而且时间有限. 最终选了web方式 ...

python 校招信息爬虫程序

发现一个爬虫程序,正在学习中: https://github.com/lizherui/spider_python

使用Xcode插件,让iOS开发更加便捷

在iOS开发过程中,写注释是一项必不可少的工作.这不仅有助于自己对代码整理回顾,而且提高了代码的可读性,让代码维护变得容易.但是,写注释又是一项枯燥的工作.我们浪费了大量的时间在输入/*,*,*/这样 ...

CDI services--Event(事件)

Cdi中的event事件,是整个CDI的精华所在之一.其有点类似设计模式中的观察者模式.但也有不同的地方.如下3点: 不仅是生产者(producers)从观察者(observers)解耦.观察者也从生 ...

瀑布 敏捷 精益 devops

敏捷:  分工角色  大项目分小项目   每个节点时间设置里程碑 Scrum实施的核心可以概括为“化繁为简”,从几个维度解释下: 团队角色的定义,将团队人员定义为三个角色,Scrum Master(主 ...

js实现字体闪烁

function changeColor(){ var color="#f00|#0f0|#00f|#880|#808|#088|yellow|green|blue|gray"; ...

python学习之——import sys模块

(1)sys.argv sys模块中的argv变量通过使用点号指明——sys.argv——这种方法的一个优势是这个名称不会与任何在你的程序中使用的argv变量冲突.另外,它也清晰地表明了这个名称是sy ...

ali arthas 火焰图_使用arthas 生成火焰图分析jvm相关推荐

  1. R语言生成组合图并保存实战:实际上只保存了最后一个图问题、ggsave生成组合图并保存(保存完整组合图)

    R语言生成组合图并保存实战:实际上只保存了最后一个图问题.ggsave生成组合图并保存(保存完整组合图) 目录

  2. ali arthas 火焰图_阿里巴巴 Arthas 3.1.5版本支持火焰图,快速定位应用热点

    转自: 横云断岭的专栏 Arthas Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱. Github:https://github.com/alibaba/arthas 文档:ht ...

  3. mysql火焰图_如何读懂火焰图?

    原标题:如何读懂火焰图? 文章作者:阮一峰http://www.ruanyifeng.com/原文链接:http://www.ruanyifeng.com/blog/2017/09/flame-gra ...

  4. linux生成火焰图,一键采集cpu生成火焰图

    cpu 性能分析 CPU 性能分析工具很多,我常用的工具是 perf 工具. perf perf 是 Linux 上的一款性能分析工具,可以对 on-cpu.off-cpu.memory 等进行采集分 ...

  5. 上证指数30年k线图_上证指数历史k线图_k线图24种经典图解

    上证指数季度k线图 400x296 - 90KB - JPEG 戴若顾比:上证指数寻找新的支撑_股市及时雨 550x341 - 25KB - JPEG 上证综指周K线图 300x232 - 16KB ...

  6. python画美图_学会这些Python美图技巧,就等着女朋友夸你吧

    一.前言 Python中有许多用于图像处理的库,像是Pillow,或者是OpenCV.而很多时候感觉学完了这些图像处理模块没有什么用,其实只是你不知道怎么用罢了.今天就给大家带了一些美图技巧,让你的图 ...

  7. java 鱼刺图_使用java实现鱼刺图

    刚毕业了,这是毕业设计的java web项目中的一个功能,使用鱼刺图进行辅助管理,在做的过程中,没有找到国内有公开的研究资料,不管是哪一种语言,所以就自己做了一个java的鱼刺图生成插件,虽然毕业设计 ...

  8. ggplot2组合图_组合多个ggplot2图以用于科学出版物

    ggplot2组合图 The ggplot2 is one of the popular plotting libraries that one could leverage to get beaut ...

  9. 关于主机的思维导图_读《思维导图》系列丛书----我用思维导图做什么?

    多图预警! 作者简介:深圳一所公立高中的生物老师,日常是备备课,读读书,打打球,吹吹牛. 我将从以下几个方面介绍我是如何使用思维导图的. 图1:介绍我如何使用思维导图的思维导图 1.我平时用思维导图来 ...

最新文章

  1. 北京电影学院发了一篇满是数学公式的计算机顶会论文,并开源了其代码(附链接)...
  2. 4.1 - 并发编程 - 进程练习题
  3. Swift实现CoreData存储数据
  4. 用Virtual PC 2007安裝Fedora Core 9
  5. hihoCoder1233(2015北京网络赛H题)
  6. 消息队列_消息队列:kafka
  7. elasticsearch group by java_java elasticsearch聚合查询实例详解
  8. 数据结构和算法———P3 时间复杂度和空间复杂度
  9. 神策分析 2.1 重磅上线!报警诊断、多主体分析、渠道追踪等赋能企业数字化经营...
  10. 变量的存在意义和底层逻辑(《Java与Python学习通法》)
  11. c++win32项目 如何显示后再删除一个绘图_50个CAD绘图小技巧,来get成倍提高绘图效率...
  12. LuceneSolrElasticSearch-面试题
  13. 火车头采集器在线发布模块制作教程
  14. Qt编写可视化大屏电子看板系统1-布局方案
  15. mysql选择题解析_数据库选择题及答案
  16. springboot dubbo的java配置
  17. delphi 调用youtube-dl命令,下载youtube视频,原理及源代码
  18. 解决ROS 与 Anaconda 冲突问题
  19. 当你老了,一生最后悔什么?
  20. 线性结构和非线性结构基本概念

热门文章

  1. 百度推出蓝天算法,严厉打击新闻源售卖目录
  2. 在家怎样用电脑赚钱,这4种在家操作比较适合!
  3. win7查看隐藏文件_在Mac上查看隐藏文件的四个方法
  4. 00后博士毕业拟任顶级985副研究员,网友扒出论文后吵翻了
  5. emqttd java 即时通讯_[emqttd] (EMQ)
  6. U盘、硬盘 相关的(分区隐藏、格式化)命令行操作
  7. 论文阅读《Revisiting Stereo Depth Estimation From a Sequence-to-Sequence Perspective with Transformers》
  8. 你的钱包里放着谁的照片
  9. AWS认证视频教程(Certified Developer)
  10. 在Windows笔记本上调试运行在iOS设备上的前端应用 1