【Java专题_09】生产环境Jvm参数设置

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【Java专题_09】生产环境Jvm参数设置

前言

最近公司有个独立的小模块是我这边负责开发上线,涉及到jvm参数调整方面,主要是根据服务器的配置4C16G配置了以下的参数,程序单纯只是接口查询redis以及信息上报,数据量大概是每天3000万!

nohup java -Xmx10G -Xms10G -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/applog/miservice/logs/ -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/applog/miservice/logs/gc.log -jar miservice.jar > /dev/null 2>&1 &
参数解析:
-Xmx10G:将Java堆的最大内存大小设置为 10G。
-Xms10G:将Java堆的初始内存大小设置为 10G。
-XX:+HeapDumpOnOutOfMemoryError:指定在发生内存溢出错误时生成堆转储文件。
-XX:HeapDumpPath=/applog/miservice/logs/ :指定堆转储文件的日志路径,将堆转储文件保存在 /applog/miservice/logs/  目录中。
-XX:+UseG1GC:启用G1垃圾回收器。
-XX:MaxGCPauseMillis=200:设置垃圾回收的最大停顿时间为 200 毫秒。
-XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCDateStamps:打印GC日志信息,包括详细的GC事件、日期时间戳等。
-Xloggc:/applog/miservice/logs/gc.log:将GC日志输出到指定的日志文件/applog/miservice/logs/gc.log。
-jar miservice.jar:指定要运行的Java应用程序的可执行JAR文件。
请根据你的具体需求进行调整,并确保将 -jar miservice.jar 替换为你要运行的Java应用程序的实际可执行JAR文件。另外,确保指定的日志路径存在并且有适当的写入权限。
nohup:在命令行中运行Java应用程序,并将其与终端分离,使其在后台执行。
> /dev/null 2>&1:将标准输出和标准错误重定向到 /dev/null,这样不会在当前目录下生成 nohup.out 文件。
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
存储 SQL 小程序
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
这篇文章详细介绍了Java虚拟机(JVM)的运行时数据区域和JVM指令集,包括程序计数器、虚拟机栈、本地方法栈、直接内存、方法区和堆,以及栈帧的组成部分和执行流程。
32 2
JVM知识体系学习五:Java Runtime Data Area and JVM Instruction (java运行时数据区域和java指令(大约200多条,这里就将一些简单的指令和学习))
|
27天前
|
存储 算法 Java
Java虚拟机(JVM)的内存管理与性能优化
本文深入探讨了Java虚拟机(JVM)的内存管理机制,包括堆、栈、方法区等关键区域的功能与作用。通过分析垃圾回收算法和调优策略,旨在帮助开发者理解如何有效提升Java应用的性能。文章采用通俗易懂的语言,结合具体实例,使读者能够轻松掌握复杂的内存管理概念,并应用于实际开发中。
|
7天前
|
Java
在Java中定义一个不做事且没有参数的构造方法的作用
Java程序在执行子类的构造方法之前,如果没有用super()来调用父类特定的构造方法,则会调用父类中“没有参数的构造方法”。因此,如果父类中只定义了有参数的构造方法,而在子类的构造方法中又没有用super()来调用父类中特定的构造方法,则编译时将发生错误,因为Java程序在父类中找不到没有参数的构造方法可供执行。解决办法是在父类里加上一个不做事且没有参数的构造方法。
|
1月前
|
存储 算法 Java
深入理解Java虚拟机(JVM)及其优化策略
【10月更文挑战第10天】深入理解Java虚拟机(JVM)及其优化策略
42 1
|
1月前
|
安全 Java API
🌟探索Java宇宙:深入理解Java技术体系与JVM的奥秘
本文深入探讨了Java技术体系的全貌,从Java语言的概述到其优点,再到Java技术体系的构成,以及JVM的角色。旨在帮助Java开发者全面了解Java生态,提升对Java技术的认知,从而在编程实践中更好地发挥Java的优势。关键词:Java, JVM, 技术体系, 编程语言, 跨平台, 内存管理。
38 2
|
1月前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
44 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
6月前
|
存储 Java 编译器
【Java变量】 局部变量、成员变量(类变量,实例变量)、方法参数传递机制
【Java变量】 局部变量、成员变量(类变量,实例变量)、方法参数传递机制
89 0
【java筑基】——为什么java中方法的参数传递机制没有引用传递
【java筑基】——为什么java中方法的参数传递机制没有引用传递
|
Java
深入理解Java中方法的参数传递机制
Java中到底是值传递or引用传递?
3995 0
|
Java
Java中方法的参数传递机制
Java中方法的参数传递机制
123 0
Java中方法的参数传递机制

热门文章

最新文章