搜索

4.3. 启用巨页

download PDF

为 JBoss EAP JVM 启用大页面会导致内存锁定的页面,不能像常规内存一样被交换到磁盘。

特别是对于内存密集型应用程序,使用大页面的优点是无法将堆分页或交换到磁盘,因此始终可用。

使用大型页面的一个缺点是,在系统中运行的其他进程可能无法快速访问内存,这可能会导致这些进程出现过量分页。

与任何其他性能配置更改一样,建议您测试测试测试环境中更改的影响。

  1. 您必须确保您的操作系统配置允许进程使用大型页面。

    • 对于 Red Hat Enterprise Linux 系统,您必须明确配置 HugeTLB 页面,以确保 JBoss EAP 进程可以访问大页。
    • 对于 Windows Server 系统,运行 JBoss EAP 的用户必须分配有大页面权限:

      1. 选择 Control Panel Administrative Tools Local Security Policy
      2. 选择 Local Policies User Rights Assignment
      3. 双击 内存中的锁定页面
      4. 添加您要使用大页面的 Windows Server 用户和用户组。
      5. 重启机器。
  2. 启用或禁用大页面支持:

    • 要显式启用 JBoss EAP JVM 的大型页面支持,请使用以下 JVM 选项:

      -XX:+UseLargePages
    • 要显式禁用 JBoss EAP JVM 的大型页面支持,请使用以下 JVM 选项:

      -XX:-UseLargePages
  3. 启动 JBoss EAP 时,确保没有与保留内存相关的警告。

    • 在 Red Hat Enterprise Linux 中,错误可能类似如下:

      OpenJDK 64-Bit Server VM warning: Failed to reserve shared memory. (error = 1)
    • 在 Windows Server 中,错误可能类似如下:

      Java HotSpot(TM) 64-Bit Server VM warning: JVM cannot use large page memory because it does not have enough privilege to lock pages in memory.

    如果确实看到警告,请验证您的操作系统配置和 JVM 选项是否已正确配置。

如需更多信息,请参阅 Oracle 文档有关 Java 对大页的支持

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.