最近在安全护网行动,需要针对服务进行不断的安全加固,如 对服务的 log4j 的安全配置进行防护,对 fastjson 的漏洞进行安全加固等,最快的防护方法就是通过在服务启动的时候,设置对应的安全参数如开启 fastjson 的安全模式,在启动服务的JVM 参数中添加以下配置;,下面我们就来聊聊关于jvm 中你不得不知的一些参数?接下来我们就一起去了解一下吧!

jvm 中你不得不知的一些参数(JVM配置参数-D)

jvm 中你不得不知的一些参数

最近在安全护网行动,需要针对服务进行不断的安全加固,如 对服务的 log4j 的安全配置进行防护,对 fastjson 的漏洞进行安全加固等,最快的防护方法就是通过在服务启动的时候,设置对应的安全参数。如开启 fastjson 的安全模式,在启动服务的JVM 参数中添加以下配置;

-Dfastjson.parser.safeMode=true

配置之后总结一下JVM 的常用的三种方式: -D,-X,-XX

-XX 标准选择(Standard Options)

-XX 是 JVM 的所有实现都支持的最常用的选项。-XX 参数被称为不稳定参数,是因为这类参数的设置会引起JVM运行时性能上的差异,配置得当可以提高JVM性能,配置不当会使JVM出现各种问题,甚至JVM崩溃。

示例:

# 例如以-XX开头的配置参数 -XX: UseConcMarkSweepGC -XX: CMSParallelRemarkEnable -XX: UseFastAccessorMethods

-X 非标准选择(Non-Standard Options)这些选项是特定于 Java HotSpot 虚拟机的通用选项。

# 例如以-X开头的配置参数 -Xmx256m -Xms256m -Xmn768m -Xss256k

-D 设置系统属性值;

-D属性名称=属性值,-D 可以设置服务jar 包中内部封装的属性值,如server.port等等,其中设置fastjson 的安全模式以及log4j的安全配置都是通过 -D 的方式进行设置

# 例如以-D开头的配置参数 -Dspring.profiles.active=release -Dspring.config.location=/opt/app/conf/

oracle 官网配置说明:https://docs.oracle.com/javase/8/docs/technotes/tools/windows/java.html

,