订单系统新增订单接口负载测试性能问题及定位
来源:互联网 发布:nginx 直播服务器搭建 编辑:程序博客网 时间:2024/06/06 13:57
http://localhost:8084/addOrder?orderName=niu&orderDesc=123&orderStatus=undelivery
get
一、假设tps上不去很低,是有什么引起的,在代码中加如Thread.sleep(200); tps 会不高 ,延迟上不去,rt在800毫秒,响应时间长,通过线程dump定位这个问题,某个方法阻塞在哪里。线程阻塞
jstack 进程号 | more 。打线程dump的命令 ,jstack 进程号>文件名.log (例如jstack 5328 >order.log)。用编辑器在打开这个文件order.log 。线程dump,线程是对象,线程用来跑程序的。程序调用链就是A调B,B调C,就有了一个调用栈,线程调用栈,这个就是由来此。多个线程可以处理一件事情。线程的名字 http-bio-8888-exec-3 这是一个tomcat的线程,我们的实例运行在tomcat,如果我们用jar包来启动一个线程,就不有这个 http-bio-8888-exec-3 这个。我们的应用程序是运行在tomcat上的,tomcat去调util 起线程池,
项目脚本
测试执行,数据收集
在服务器上打线程dump文件,jstack 599 >order.log,下载到本地查看
二、发生频繁fgc和报oom 堆内存溢出两种情况,old区满了以后,jstat -gcutil 进程号 1000 fugc不了 ,会导致oom,植入代码,Byte 定位问题
用jmap -histo 进程号 | more 查看堆内存情况 第一列是数字 第二列是对象 第三列数据的大小 第四列在java虚拟机里类的名字,在程序里有很多byte,内存空间 (934444/1024/1024=891m)。打堆dump命令 jmap -dump:live,format=b,file=dump.hprof 28920 ,用ecplise 的mat打开 分析
- 订单系统新增订单接口负载测试性能问题及定位
- 前端bugger 后端debug 介绍系统内部逻辑 压测新增订单接口 tps上不去 ,oom ,常见性能问题 ,性能分析思路
- 订单系统
- 订单问题
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单
- 订单系统框架整合,及代码
- 商城项目实战37:订单系统最小实现接口文档及实现
- 《UNIX网络编程 卷1》 笔记: 名字与地址转换
- jQuery JSONView【JSON高度格式化和语法高亮】
- 递归-微软面试100题-台阶问题
- C语言的指针
- 2017 暑期实习校园招聘(Java后台开发方向)面经分享
- 订单系统新增订单接口负载测试性能问题及定位
- java 使用 ucanaccess 连接Access数据库
- iOS开发之OC篇(12)—— Category(分类)、Extension(扩展)
- USACO-Section1.1 Greedy Gift Givers
- # 海量数据下的TopK问题
- Spring框架的主要组件
- 手机通话原理
- 机器学习实战-Logistic回归
- 算法题目-从尾到头打印链表