设置Java Tomcat参数

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

当您使用WAR包部署应用时,您可以根据需求自定义Tomcat参数,包括应用端口、应用访问路径以及最大线程数等信息。本文介绍如何在SAE控制台为基于WAR部署的Java应用设置Java Tomcat参数。

前提条件

在设置Java Tomcat的相关参数之前,请确保您已准备Java应用程序的WAR包文件。

操作步骤

在创建应用过程中配置Tomcat

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击创建应用

  3. 应用基本信息配置向导,设置应用相关信息,并单击下一步:应用部署配置

  4. 应用部署配置配置向导,配置应用部署信息。

    配置项说明
    技术栈语言选择Java
    应用部署方式选择WAR包部署
    应用运行环境
    • apache-tomcat-XXX:适用于Spring Boot或Dubbo应用。
    • EDAS-Container-XXX:适用于HSF应用。
    Java环境
    • Dragonwell X(推荐):支持OpenJDK,支持应用启动及运行时加速,提升GC效率等。更多信息,请参见设置启动命令

    • Open JDK X:基于CentOS操作系统,基础镜像大。

    • openjdk-XXXXX-jdk-alpine3.9:基于Alpine操作系统,基础镜像小。

    说明

    与CentOS操作系统相比,基于Alpine操作系统的Java环境附带的工具或命令较少。如果您选择了openjdk-XXXXX-jdk-alpine3.9,可能会导致Webshell中部分命令无法执行,请根据实际情况选择环境。

    文件上传方式选择上传WAR包WAR包地址
    • 上传WAR包:单击选择文件,选择待部署WAR包。
    • WAR包地址:输入WAR包的存放地址。
    说明 应用部署程序包名仅允许字母、数字、短划线(-)和下划线(_)。
    版本设置应用版本号,选择输入版本号或者单击使用时间戳为版本号将时间戳作为应用版本号。
    时区设置选择当前应用所在时区,例如UTC+8
  5. 展开Java Tomcat设置区域,选中自定义配置,单击编辑

    选中Java Tomcat

  6. 编辑Java Tomat设置面板,配置相关信息,单击确定

    image

    配置项

    说明

    应用端口

    默认为8080,取值范围[1024,49151]。

    Tomcat Context

    选择应用访问的路径。

    • 程序包名字:无需填写自定义路径,应用的访问路径是WAR包名称。文件上传方式上传WAR包时可以选择。

    • 根目录:应用的访问路径是/

    • 自定义:在自定义路径区域设置应用需要访问的路径。

    最大线程数

    设置并发处理请求的最大线程数。默认为400,取值范围为[10, 1024]。

    重要

    最大线程数会直接影响应用性能,请谨慎设置。

    Tomcat编码

    Tomcat的编码格式,包括UTF-8ISO-8859-1GBKGB2312,默认为ISO-8859-1

    Use Body Encoding for URL

    默认选中,选中后可以根据HTTP Body设置的字符集解码查询参数(QueryString)。

  7. 单击下一步:确认规格

  8. 确认规格配置向导,查看您所创建应用的详细信息以及配置费用情况,并单击确认创建

    页面会跳转至创建完成配置向导,您可以单击应用详情页进入基本信息页面,查看已创建的应用的基本信息。

在部署应用过程中配置Tomcat

警告

重新部署应用后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。

更新应用配置的路径因实例数的不同而不同。本文以实例数大于等于1为例,介绍如何配置目标功能。当实例数等于0时的操作路径,请参见更新应用

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击目标应用名称。

  3. 基本信息页面右上角,单击部署应用

  4. 展开Java Tomcat设置区域,选中自定义配置,单击编辑

    选中Java Tomcat

  5. 编辑Java Tomat设置面板,配置相关信息,单击确定

    image

    配置项

    说明

    应用端口

    默认为8080,取值范围[1024,49151]。

    Tomcat Context

    选择应用访问的路径。

    • 程序包名字:无需填写自定义路径,应用的访问路径是WAR包名称。文件上传方式上传WAR包时可以选择。

    • 根目录:应用的访问路径是/

    • 自定义:在自定义路径区域设置应用需要访问的路径。

    最大线程数

    设置并发处理请求的最大线程数。默认为400,取值范围为[10, 1024]。

    重要

    最大线程数会直接影响应用性能,请谨慎设置。

    Tomcat编码

    Tomcat的编码格式,包括UTF-8ISO-8859-1GBKGB2312,默认为ISO-8859-1

    Use Body Encoding for URL

    默认选中,选中后可以根据HTTP Body设置的字符集解码查询参数(QueryString)。

  6. 配置完成后,单击确认

利用配置项修改Tomcat配置文件

如果SAE控制台提供的以上Tomcat参数配置无法满足您的需求,或者您需要修改其他的Tomcat配置文件,您可以通过挂载配置项来实现。

通过WAR包成功部署SAE应用后,Tomcat的server.xml文件会位于/home/admin/apache-tomcat-8.5.42/conf目录下。本文以server.xml文件为例,介绍如何利用配置项修改Tomcat配置文件。

  1. 修改server.xml文件内容。

    1. 登录SAE控制台

    2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击具体应用名称。

    3. 基本信息页面,单击实例部署信息页签,在默认分组区域单击实例操作列的Webshell

    4. 在Webshell窗口修改server.xml文件内容,并关闭窗口。

      1. 执行以下命令,进入server.xml文件所在的目录。

        cd /home/admin/apache-tomcat-8.5.42/conf
      2. 执行以下命令,查看server.xml文件内容。

        cat server.xml
      3. 复制server.xml的文件内容至本地,按需修改后再次复制。

  2. 创建配置项。

    说明

    配置项与目标应用所在的命名空间需保持一致。

    1. 应用列表页面左侧导航栏,单击命名空间(环境),在顶部菜单栏选择地域,然后单击具体命名空间名称。

    2. 在左侧导航栏,单击配置项,然后在配置项页面,单击创建

    3. 创建配置项面板,输入相关参数,在文本框内粘贴修改后的server.xml文件内容,并单击确定

      sc_create_configmap_for_tomcat本文以默认显示的手工创建方式为例。参数说明如下。更多信息,请参见管理和使用配置项(K8s ConfigMap)

      配置项说明
      配置项名称自定义。
      配置项描述自定义。
      配置映射
      • 键的长度不超过250个字符,值的长度不超过10,000个字符。
      • 一个配置项最多可以填写20个键值对。

    创建的配置项将显示在配置项页面。

  3. 部署应用并挂载配置项。

    1. 在左侧导航栏单击命名空间详情,在命名空间详情页面单击资源信息页签。

    2. 单击具体的应用数数值,在应用列表页面单击目标应用。

    3. 基本信息页面右上角,单击部署应用

    4. 部署应用页面下方,展开配置管理区域,选择步骤2创建的配置项名称,并输入挂载路径sc_mount_configuration_for_tomcat

    5. 配置完成后,单击确认

      您可以在变更详情页面查看应用部署的执行状态。

结果验证

  1. 登录SAE控制台

  2. 在左侧导航栏,选择应用管理 > 应用列表,在顶部菜单栏选择地域,然后单击目标应用名称。

  3. 通过以下方式验证配置是否生效。

    • 方式一:

      在应用基本信息页面的左侧导航栏,单击变更记录,在变更记录页面,查看应用变更详情。如果显示执行成功,表示应用部署成功,配置已生效。

    • 方式二:

      在应用基本信息页面,单击实例部署信息页签,查看实例的运行状态。如果运行状态显示为Running,表示应用部署成功,配置已生效。