查看 java jvm 进程线程的命令 适用于其他
工具软件 Linux JAVA
2023-02-28 18:08:58
400
0
top -H -p 1* H - Threads mode (summarize as tasks)* p - PID monitoring (show all processes)* d - Delay time 1.5 seconds如: 获取进程为 1 的 线程数ps 命令 -e Select all processes. Identical to -A -T Show thread... ...
阅读全文
java8 jvm 中建议设置的启动参数 JAVA_OPTS
JAVA
2023-02-28 15:17:16
656
0
JAVA_OPTS="-Xms4096m -Xmx4096m -XX:MetaspaceSize=256m"这两个参数可以出发 gcXms/ xmx 用来 设置堆内存的大小 -Xmn: 堆内新生代的大小MetaspaceSize 设置 Metaspace 触发 fullgc 的大小还可以设置线程的大小, 默认如下:Linux/x86 (64-bit): 1 MBmacOS (64-bit): 1 MBOracle Solaris (64-bit): 1 MBOn Windows, the JVM uses the system-wide stack si... ...
阅读全文
java8 jvm 中 MetaspaceSize 引起的 full gc
JAVA
2023-02-28 14:48:59
444
0
从Java 8开始,永久代(Perm Generation)被移到了元空间(Metaspace),Metaspace默认没有上限,与物理内存一致。除了堆中的老年代,元空间的resize过程也可以引起Full GC。应用启动时,元空间内存较小,随着应用负载增大,它需要多次resize,而每次resize,就是一次Full GC。这也就解释了为什么有些应用刚启动就触发了N次full gc。对于堆内存,解决resize带来的问题,常见的做法是固定一个较大的Xms,或者直接Xms=Xmx。元空间相关的JVM参数是 -XX:MetaspaceSize=size,这个值是触发元空间Full GC的阈值。原... ...
阅读全文
VMWARE虚拟机正在保存快照没保存完可以继续操作吗?
工具软件 Windows
2023-02-22 11:23:24
436
0
什么是快照VMware中的快照是对VMDK在某个时间点的“拷贝”,这个“拷贝”并不是对VMDK文件的复制,而是保持磁盘文件和系统内存在该时间点的状态,以便在出现故障后虚拟机能够恢复到该时间点。如果对某个虚拟机创建了多个快照,那么就可以有多个可恢复的时间点。快照过程当我们为虚拟机创建的快照时,当前可写的VMDK文件变成为只读状态,并且创建一个新文件(称之为快照文件)来保存变化的内容(使用 in-file delta technology)。在初始状态下,快照文件的大小为16MB,并随着虚拟机对磁盘文件的写操作而增长。快照文件按照16MB的大小进行增长以减少SCSI reservation冲突。当... ...
阅读全文
java JVM 性能调优工具 jinfo 查看修改运行参数
JAVA
2023-02-17 09:43:25
478
0
官网:https://docs.oracle.com/javase/7/docs/technotes/tools/share/jinfo.html Jinfo 是 JDK 自带的命令,可以用来查看正在运行的 java 应用程序的扩展参数,包括Java System属性和JVM命令行参数;也可以动态的修改正在运行的 JVM 一些参数。当系统崩溃时,jinfo可以从core文件里面知道崩溃的Java应用程序的配置信息。jinfo 用法$ jinfo -help
Usage:
jinfo [option] <... ...
阅读全文
java(jvm)堆内存回收流程 minor GC and major GC
JAVA
2023-02-16 14:36:37
441
0
无论使用何种收集器,JVM 都有两种类型的 GC 过程:minor GC major GCyoung 年轻代使用 minor GC 过程触发条件:JVM 无法从 Eden 空间获取分配新对象所需的内存1. 我们假设开始时伊甸园空间上已经有对象(块 01-06)2. 此时应用程序创建一个新对象(07)3. JVM 试图从 Eden 空间中获取所需的内存,但是 Eden 中没有可用空间来容纳我们的对象(07),因此 JVM 触发了 minor GC4. GC 从栈指针开始递归遍历 Eden 中的对象,使用的对象 标记为 alive (Used memory),未使用的... ...
阅读全文
java (jvm)程序内存组成(结构) 堆内存 非堆内存
JAVA
2023-02-16 13:03:57
387
0
1. java 程序内存组成参考:https://deepu.tech/memory-management-in-jvm/ (基于 jdk 11)Heap Memory:堆内存存放 object 和 动态数据参数: Xms(初始) Xmx(最大)分为 Yong 和 OldMeta Space: 元数据class loaders 加载的 class 存放这里之前叫做 永久代 Permanent Generation(PermGen) Space使用 主机内存,默认情况没上限(可使用参数设置),即使超过内存,会移到虚拟内存参数: XX:MetaspaceSize(初始) 和 -... ...
阅读全文
JVM的Xms和Xmx参数设置为相同值有什么好处?
JAVA
2023-02-16 11:15:56
595
0
起因IDEA的VM配置(安装时默认配置)中有如下的配置:# custom IntelliJ IDEA VM options
-Xms2048m
-Xmx2048mXms和Xmx参数定义在启动Java应用程序时,我们通常可以通过参数Xms和Xmx来配置JVM的堆信息。不配置虽然会有默认值,但如果受硬件所限或需对JVM进行调优,则需要根据情况指定这两个参数的值。-Xms:堆内存的最小Heap值,默认为物理内存的1/64,但小于1G。默认当空余堆内存大于指定阈值时,JVM会减小heap的大小到-Xms指定的大小。-Xmx:堆内存的最大Heap值,默认... ...
阅读全文
从 CentOS 8 到 CentOS Stream 到底发生什么事了?
系统
2023-02-15 10:25:21
783
1
在Linux服务器操作系统领域,CentOS一直被认为是一个稳定安全并且可靠的发行版本。它是从RHEL源代码复刻,去除了RHEL有关的商标等一些内容构建出来的。但是从CentOS被Red Hat收购以后,它的命运发生了转变。最新的版本是CenOS 8,迎接它的下一个版本不是CentOS 9了,而是Red Hat推出的一个新的概念-- CentOS Stream 9这是怎么一回事,这个改变对Linux服务器领域又意味着什么?一) centos 和 centos stream 关系以下事情是已经被决定并肯定会发生的一些事情:CentOS本来的角色,从RHEL的复刻版转变为RHEL构建之... ...
阅读全文