• Ukieweb

    佳的博客

    曾梦想仗剑天涯,后来工作忙没去。

筛选日期: 2023-02


查看 java jvm 进程线程的命令 适用于其他

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_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 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虚拟机正在保存快照没保存完可以继续操作吗?

什么是快照VMware中的快照是对VMDK在某个时间点的“拷贝”,这个“拷贝”并不是对VMDK文件的复制,而是保持磁盘文件和系统内存在该时间点的状态,以便在出现故障后虚拟机能够恢复到该时间点。如果对某个虚拟机创建了多个快照,那么就可以有多个可恢复的时间点。快照过程当我们为虚拟机创建的快照时,当前可写的VMDK文件变成为只读状态,并且创建一个新文件(称之为快照文件)来保存变化的内容(使用 in-file delta technology)。在初始状态下,快照文件的大小为16MB,并随着虚拟机对磁盘文件的写操作而增长。快照文件按照16MB的大小进行增长以减少SCSI reservation冲突。当... ...
阅读全文

java JVM 性能调优工具 jinfo 查看修改运行参数

官网: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

无论使用何种收集器,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)程序内存组成(结构) 堆内存 非堆内存

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参数设置为相同值有什么好处?

起因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 到底发生什么事了?

在Linux服务器操作系统领域,CentOS一直被认为是一个稳定安全并且可靠的发行版本。它是从RHEL源代码复刻,去除了RHEL有关的商标等一些内容构建出来的。但是从CentOS被Red Hat收购以后,它的命运发生了转变。最新的版本是CenOS 8,迎接它的下一个版本不是CentOS 9了,而是Red Hat推出的一个新的概念-- CentOS Stream 9这是怎么一回事,这个改变对Linux服务器领域又意味着什么?一) centos  和 centos stream 关系以下事情是已经被决定并肯定会发生的一些事情:CentOS本来的角色,从RHEL的复刻版转变为RHEL构建之... ...
阅读全文

老佳啊

85后,大专学历,中原人士,家里没矿。

由于年轻时长的比较帅气,导致在别人眼里,我一直不谈恋爱的原因是清高,实则是自己的小自卑。最大的人生目标就是找一个相知相爱相容的人,共度余生。

和人相处时如果能感受到真诚,会非常注重彼此的关系,对别人没有什么心机,即使有利益冲突,一般也会以和为贵,因为在这个世界上,物质的东西,从来不会吸引到我。

特别迷恋那些大山大水,如果现在还能隐居,可能早就去了。对那些宏伟的有底蕴的人文景观比较不感冒。

从事于IT行业,却一直对厨房念念不忘,由于身材魁梧,总觉得自己上辈子是个将军,可惜这辈子没当兵,也不会打架。