![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
调优
文章平均质量分 64
qq_23204557
这个作者很懒,什么都没留下…
展开
-
唯品会面试(部分)
此外,如果接口耗时的情况是不定时出现,则可以通过压测的方式加大阻塞点出现的频率,再通过 jstack查看堆栈信息等手段,找到阻塞点。因为如果说该接口中有某个位置是比较耗时的,由于我们的访问的频率非常高,那么大多数的线程最终都将阻塞于该阻塞点,这样通过多个线程具有相同的堆栈日志,我们基本上就可以定位到该接口中比较耗时的代码的位置。命令查看当前进程的各个线程运行情况,找出CPU过高的线程之后,将其线程id转换为十六进制的表现形式,然后在jstack日志中查看该线程主要在进行的工作。汇总new bing以及。原创 2023-06-30 23:09:49 · 604 阅读 · 0 评论 -
慢查询现象及解决
mysql数据库服务器cpu打满,依赖此数据库的服务各种不响应和报错。改索引,利用索引考虑设置loose_max_statement_time(最大查询执行时间)原创 2022-06-15 16:23:29 · 397 阅读 · 0 评论 -
联表delete性能,联表update
update/delete where in select 的性能问题原创 2022-06-15 14:38:02 · 157 阅读 · 0 评论 -
性能分析工具Arthas
功能一:火焰图Arthas 使用 async-profiler 生成 CPU/堆内存火焰图进行性能分析。使用 async-profiler 可以做下面几个方面的分析:CPU cyclesHardware and Software performance counters like cache misses, branch misses, page faults, context switches etc.Allocations in Java HeapContented lock attemp原创 2021-10-21 16:17:40 · 660 阅读 · 0 评论 -
在事务中更新大量数据造成的锁等待超时和慢查询
根据公司SRE给出的慢查询记录:我在Kibana中查到了相关的600多条日志:根本原因在于某sql update,where id in的列表过长(多达几百),range过大的互斥锁不好申请(估计读已提交级别,update … where id in (…)采用的是间隙锁,查过一些资料,未能100%确认)。它所在的事务一直申请不到锁,就超时(默认50秒)报错了:com.mysql.cj.jdbc.exceptions.MySQLTransactionRollbackException: Lock原创 2021-10-15 15:08:06 · 845 阅读 · 0 评论 -
《Java Concurrency in Practice》读书笔记
from p90:Executor接口提供了一种将任务提交和任务执行解耦的手段,它基于生产者消费者模式:Executor is based on the producer consumer pattern, where activitiesthat submit tasks are the producers (producing units of work to bedone) and the threads that execute tasks are the consumers (cons原创 2021-01-02 22:53:31 · 195 阅读 · 1 评论 -
《专题三分布式系统》之《第四章 数据存储层优化(上)-数据库优化》之 《第六节 数据变更注意事项》
《4.6.2-生产环境改表结构》pt-online-schema-change:《4.6.3-insert导致的死锁》视频里的死锁成因没讲清楚,三个事务都在insert,应该申请X锁,怎么就成了S锁?这里的“五、insert死锁场景分析”解释了:事务T1成功插入记录,并获得索引id=6上的排他锁。紧接着事务T2、T3也开始插入记录,申请排他锁,但由于唯一索引冲突,各自请求的排他锁转成共享锁。(但是为什么排他锁会转成共享锁?这是什么机制?)T1回滚释放索引id=6上的排他锁,T2和T3都要请求索引原创 2020-12-16 20:11:54 · 101 阅读 · 1 评论 -
《第四章 单系统高并发优化》之《第五节 单机限流》
四种限流算法:计数器、滑动窗口、漏桶、令牌桶计数器、滑动窗口的讲解可参考https://www.cnblogs.com/linjiqin/p/9707713.html漏桶:34分:令牌桶:缺点没明白隔离策略:线程池、信号量Semaphore...原创 2020-10-31 02:15:47 · 279 阅读 · 0 评论 -
《专题二 单节点系统》之《第三章 应用服务器优化》之《第三节 Tomcat容器优化》
HTTP协议之响应状态码:?《3.3.3 NIO网络编程》:堆外内存:Channel通道:轮询通道Selector选择器:不再轮询通道,改为轮询事件BIO vs NIO:BIO:NIO:NIO与多线程结合的改进方案:《3.3.5 Tomcat参数调优》:调优:架构建议:...原创 2020-06-16 02:14:29 · 236 阅读 · 0 评论