10 2020 档案

摘要:首先,jvm调优,包括两种情况,一种是系统发生了OOM异常,这种情况,导出堆的dump日志,然后用MAT技术分析即可。一般MAT会自动分析出问题,查找代码,进行修改即可。 另一种情况是,没有发生OOM,但是,要对jvm进行调优,使jvm的使用达到最优。 这种情况,就需要用top命令,查出占用CPU或 阅读全文
posted @ 2020-10-29 17:08 架构改变世界 阅读(206) 评论(0) 推荐(0)
摘要:1.jvm调优分类 1.1JVM预调优: 根据业务场景,注重吞吐量还是注重响应时间; 提升硬件性能,最简单,但是成本最高。 1.2程序卡顿: 1.3OOM: 2.秒杀场景JVM调优:每秒2000并发量。采用负载均衡,平均每台服务器每秒500并发量。 场景一:大量的请求访问到服务器,造成JVM的新生代 阅读全文
posted @ 2020-10-24 22:53 架构改变世界 阅读(885) 评论(0) 推荐(0)
摘要:1.jpd:虚拟机进程查询工具。查看jvm的进程。 2.jstat:统计虚拟机运行状况:一般用来统计垃圾回收。 3jinfo:配置jvm的参数。配置可配置的参数。 4.jmap命令:dump日志。堆快照。将堆的信息导出到文件。 jamp -dump:live 5.jstack命令:jvm里的线程信息 阅读全文
posted @ 2020-10-21 22:47 架构改变世界 阅读(235) 评论(0) 推荐(0)
摘要:List.stream()转换成流,然后进行流的各种操作,分为中间操作和终结操作。中间操作是指返回值还是stream,还需要继续处理。终结操作是指不再往下进行流式表达式了。具体如下: 中间操作: 1.filter()过滤:list.stream().filter(u->u.xxx条件)。其中,fil 阅读全文
posted @ 2020-10-21 22:30 架构改变世界 阅读(421) 评论(0) 推荐(0)
摘要:1.复制算法: 新生代采用的复制算法。From区到To区,以及To区到From区,就是采用的复制算法,来回移动。这样的好处是移动后,没有内存碎片。内存格式比较整齐。缺点就是需要分配一半儿的内存,来复制移动。所以新生代中有了Eden区,来提高内存的利用率。缩小复制算法的区域。 细节:new出来的对象, 阅读全文
posted @ 2020-10-19 22:18 架构改变世界 阅读(130) 评论(0) 推荐(0)
摘要:一.内存模型 1.线程私有区:每个线程里有虚拟机栈,本地方法栈(执行native方法的区域)和程序计数器 2.线程共享区。包括方法区和堆。 3.虚拟机栈:就是平时理解的栈。栈帧:先进后出的每个元素,都可称为栈帧。进出栈的元素,就是栈帧 -Xss:设置栈的默认大小。每个线程开启栈时,都开启一块儿内存。 阅读全文
posted @ 2020-10-18 20:27 架构改变世界 阅读(103) 评论(0) 推荐(0)