当前位置:网站首页>Problems and analysis in JMeter performance testing. How many problems have you encountered?
Problems and analysis in JMeter performance testing. How many problems have you encountered?
2022-06-30 12:46:00 【Full stack programmer webmaster】
Common performance test analyse
1、 System resource problems
CPU/ Memory / disk / The Internet ...
2、 Language / Code :
JVM/PHP-fpm ...etc
3、 Frame question :
Sprint Boot / Baidu RPC...Single point of service performance problems
1、CPU load
2、 Memory leak
3、 disk IO
4、 The Internet IO
5、JAVA Full GC
6、TCP The number of connections
7、 The worker thread is full
.....Case study 1: A stress test , Server side CPU Soar to full ,CPU Computational
TOP -H -p pid
Pstack pid
Trace -p pid
Code logic problems :
Synchronous resolution interface , Match the returned content in a regular way , But because the returned content is too large , Lead to CPU soaring . Regular , Big data JSON serialize / Deserialization
In addition, the deadlock problem can be tuned in a similar way
CPU Not high , But the service response is time-consuming , Request to pile up ;Case study 2: A stress test , System CPU And other indicators are normal , However, occasional intermittent time requests are particularly time-consuming
JVM GC problem :
Full GC Stop the world
Reduce Full GC Time , Decrease in the elderly generation Case study 3: A stress test ,php Program ,php-fpm Memory growth ,OOM Cause the service to hang up
Check the cause , Using a third party so Plug in JSON analysis , But a third party so The plug-in has a memory leak problem .
Max-request,fast-cgi Restart after fixing the number of requests Case study 4: A pressure measurement ,CPU/ Memory / The Internet And other indicators performed well , But the response takes a long time
Monitor disk view IO abnormal , The trace discovery log level is set to Debug, A lot of log printing is a drag on performance
Synchronous log , May be a potential performance killer Case study 5: A stress test ,CUP/ Memory / The Internet / disk All indicators performed well , But the response time is very long
see Nginx journal , Find out request_time longer , however upstream_response_time Actually short .Case study 6: A pressure measurement , The same concurrency TPS, But the early performance is good , Post database CPU soaring
Pressure measurement will generate a large amount of data , Data growth will lead to loss of performance
The pressure measurement data is unreasonable , This causes the unified device to associate multiple users , There are no restrictions on the server in Inquire about
Unreasonable paging , No coconut tree limit, As a result, all the newly added data in the database will be queried Case study 7: A stability test , Big concurrent TPS, Good early performance , Slice cache , A large number of database penetrations are simulated at a single point of cache failure
Cache unreasonable fragmentation strategy , Use division mode . Cause a large number of cache unified time invalidation .
Unreasonable load balancing algorithms will have similar problems .
The consistency of the HASH Fix this cache problem Case study 8: A stability test , If HTTP The inlet flow is only 100% QPS, But downstream RPC Service gossip
List of merchants ,for Loop call downstream to solve , Resulting in a request hundreds of times larger .
Use Batch The interface reduces pressure ,Batch Interfaces may bring hidden functional problems Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/100683.html Link to the original text :https://javaforall.cn
边栏推荐
- JMeter's performance test process and performance test focus
- FlinkSQL自定义UDAF使用的三种方式
- 市值蒸发650亿后,“口罩大王”稳健医疗,盯上了安全套
- Reading the table data of Tencent documents in the applet
- Linux系统Redis的安装
- How to select an OLAP database engine?
- Two batches of pure milk are unqualified? Michael responded that he was conducting a large-scale screening and sampling inspection of products
- FlinkSQL自定义UDTF使用的四种方式
- ECDSA signature verification in crypt
- Solve numpy core._ exceptions. Ufunctypeerror: UFUNC 'Add' did not contain a loop with signature matching
猜你喜欢

How to use the plug-in mechanism to gracefully encapsulate your request hook

MySQL composite query

Qt中的数据库使用

Redis的配置文件及新数据类型

Commands for redis basic operations

【OpenGL】OpenGL Examples

Google refutes rumors and gives up tensorflow. It's still alive!

Redis cache problem

Dqn notes
![[one day learning awk] Fundamentals](/img/09/a3eb03066eb063bd8594065cdce0aa.png)
[one day learning awk] Fundamentals
随机推荐
Pharmacy management system
MySQL composite query
Visual Studio配置Qt并通过NSIS实现项目打包
Determining the subject area of data warehouse construction
Docker安装Mysql8和sqlyong连接报错2058的解决方法[随笔记录]
Substrate 源码追新导读: Pallet Alliance 并入主线,
“\“id\“ contains an invalid value“
【一天学awk】数组的使用
Substrate 源码追新导读: 质押额度大幅度削减, RocksDB可以完全被Disable
Shell基础入门
Clipboardjs - development learning summary 1
Sublist3r error reporting solution
电机控制park变换公式推导
90. (cesium chapter) cesium high level listening events
Redis configuration files and new data types
【一天学awk】正则匹配
Sword finger offer 05 Replace spaces: replace each space in the string s with "%20"“
Two batches of pure milk are unqualified? Michael responded that he was conducting a large-scale screening and sampling inspection of products
【一天学awk】基础中的基础
Instructions for legend use in SuperMap iclient3d 11i for cesium 3D scene