测试工具启动会递归的方式进行子进程的消息获取,目前有2种常用的ExecutorService / ForkJoinPool 为了测试哪种效果较好,我们来写个测试Demo,1到5555555,每次+1,统计每种执行完后耗时和GC数据 CompletableFuture.runAsync(() -> T ...
分类:
编程语言 时间:
2019-03-04 09:57:00
阅读次数:
314
nginx调优方向: 1、所用事件处理模型 2、进程数 3、每个进程的连接数 4、压缩 5、缓存 tomcat调优方向: 1、内存 2、总内存 3、初始申请内存 4、线程内存 5、GC方面 tomcat和nginx往往不会是瓶颈的所在,瓶颈一般跟后端数据处理及代码逻辑方面有关系,并且在项目中如何利用 ...
分类:
Web程序 时间:
2019-03-02 23:34:38
阅读次数:
219
https://www.jianshu.com/p/1f450826f62e gc原理介绍 相关优化 https://zhaoyanblog.com/archives/319.html 问题 https://elasticsearch.cn/question/1945 ...
分类:
其他好文 时间:
2019-03-02 22:22:16
阅读次数:
196
为什么要使用线程池? 1、不用线程池的话,每个线程都要通过new Thread(xxRunnable).start()的方式来创建并运行一个线程,线程少的话这不会是问题。 2、而真实环境可能会开启多个线程让系统和程序达到最佳效率,当线程数达到一定数量就会耗尽系统的CPU和内存资源,也会造成GC频繁收 ...
分类:
编程语言 时间:
2019-02-28 01:11:38
阅读次数:
225
CMS收集器 CMS收集器是一种以获取最短回收停顿时间为目标的收集器。基于“标记-清除”算法实现,它的运作过程如下: 初始标记 并发标记 重新标记 并发清除 初始标记、从新标记这两个步骤仍然需要“stop the world”,初始标记仅仅只是标记一下GC Roots能直接关联到的对象,熟读很快,并... ...
分类:
其他好文 时间:
2019-02-26 23:45:41
阅读次数:
301
本文持续更新..... 1、GC的输出日志: a. -verbose:gc,辅助输出一些详细的gc信息 b. -XX:+PrintGCDetails,输出gc的详细信息 c. -XX:PrintGCApplicationStoppedTime,输出gc造成应用造成应用程序暂停的时间 d. -XX:P ...
分类:
其他好文 时间:
2019-02-25 00:46:17
阅读次数:
173
本文转自:https://www.cnblogs.com/shudonghe/p/3457990.html 最近还是在找工作,在面试某移动互联网公司之前认为自己对Java的GC机制已经相当了解,其他面试官问的时候也不存在问题,直到那天该公司一个做搜索的面试官问了我GC的问题,具体就是:老年代使用的是 ...
分类:
其他好文 时间:
2019-02-24 17:26:28
阅读次数:
206
一、JVM结构 根据《java虚拟机规范》规定,JVM的基本结构一般如下图所示: 从左图可知,JVM主要包括四个部分: 1.类加载器(ClassLoader):在JVM启动时或者在类运行时将需要的class加载到JVM中。(右图表示了从java源文件到JVM的整个过程,可配合理解。 关于类的加载机制 ...
分类:
编程语言 时间:
2019-02-23 11:04:07
阅读次数:
221
一、内存优化 默认情况下Tomcat的相关内存配置较低,这对于一些大型项目显然是不够用的,这些项目运行就已经耗费了大部分内存空间,何况大规模访问的情况。在并发达到一定程度后也会抛出以下类似异常: 说明Tomcat已经无力支持访问处理,内部GC也已经“无能无力”。所以一般情况下我们需要重新配置Tomc ...
分类:
其他好文 时间:
2019-02-21 16:13:52
阅读次数:
151
AT command AT+CGSN 【Purpose】 Learning how to get mobile module international Mobile Equipment Identity number 【Eevironment】 Shell terminal, base on gc ...
分类:
其他好文 时间:
2019-02-21 15:43:39
阅读次数:
296