第 14 章 JVM
14.1. 关于 JVM 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
14.1.1. 关于 JVM 设置 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
对于受管域和独立服务器实例,Java 虚拟机(JVM)设置是不同的。在受管域里,JVM 设置是在
host.xml
和 domain.xml
配置文件里声明的,由负责启动和停止服务器进程的域控制器组件确定。而在独立服务器实例里,服务器的启动过程可以传入命令行参数。这可以通过命令行或管理控制台的 System Properties 屏幕里进行声明。
受管域
受管域的一个重要特征是可以定义多级别的 JVM 设置。您可以在主机、服务器组、服务器实例级别配置定义 JVM 设置。您可以用更专用的子元素覆盖父配置,这允许声明专有的服务器配置而无需在组或主机级别进行排除。这也允许其他级别继承父配置,直至在运行时传入或在配置文件里声明设置。
例 14.1. 域配置文件里的 JVM 设置
下面的例子展示了
domain.xml
配置文件里的服务器组的 JVM 声明。
在这个例子里,名为
main-server-group
的组声明了大小为 64MB 的堆,其最大堆大小为 512MB。属于这个组的任何服务器都将继承这些设置。你可以为整个组、为某个主机、或者单个服务器修改这些设置。
例 14.2. 主机配置文件里的域设置
下面的例子展示了
host.xml
配置文件里的服务器组的 JVM 声明。
在这个例子里,名为
server-two
的服务器属于 main-server-group
服务器组,它继承了 default
JVM 组的设置。在前面的例子里,main-server-group
的主要堆大小是 512MB。通过声明更小的最大堆尺寸为 256MB,server-two
可以覆盖 domain.xml
设置来按需要调整性能。
运行时的独立服务器设置
独立服务器实例的 JVM 设置可以在启动服务器前通过设置 JAVA_OPTS
环境变量来声明。下面是在 Linux 命令行里设置 JAVA_OPTS
环境变量的例子:
export JAVA_OPTS="-Xmx1024M"
[user@host bin]$ export JAVA_OPTS="-Xmx1024M"
相同的设置可以用于 Microsoft Windows 环境,如:
set JAVA_OPTS="Xmx1024M"
C:\> set JAVA_OPTS="Xmx1024M"
或者,可以将 JVM 设置添加到
EAP_HOME/bin
目录下的 standalone.conf
文件里,它包含了传入 JVM 的选项示例。
14.1.2. 在管理控制台里显示 JVM 状态 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
独立服务器或受管域的 Java 虚拟机(Java Virtual Machine,JVM)状态都可以在管理控制台里显示。控制台以 MB 单位显示了堆、线程的使用情况。虽然统计数据并非实时显示的,但您可以刷新控制台来显示 JVM 资源的最新状况。
JVM 状态包含下列数值。
类型 | 描述 |
---|---|
Max | 用于内存管理的最大内存数量(字节)。 |
Used | 已使用的内存数量(MB)。 |
Committed | 提交给 JVM 使用的内存数量(字节)。 |
Init | JVM 从操作系统请求的用于内存管理的初始内存数量(字节)。 |
过程 14.1. 在管理控制台里显示 JVM 状态
显示 JVM 状态
您可以查看独立服务器或受管域的 JVM 状态。显示独立服务器实例的 JVM 状态
从屏幕的 菜单里选择 。显示受管域的 JVM 状态
在 Runtime 屏幕的 Domain Status 菜单里选择 JVM Status。- 受管域可以提供服务器组里的所有服务器实例的可视性,但它只允许您在服务器菜单里一次查看一个服务器。要查看服务器组里其他服务器的状态,请点击屏幕左上角的下拉框,选择要查看的主机和服务器,然后点击加载结果。
结果
显示服务器实例的 JVM 设置的状态。