部署后变量

以下​ 部署后 ​变量在部署后阶段控制操作,可以继承和覆盖全局变量的值。 在.magento.env.yaml文件的post-deploy阶段中插入这些变量:

stage:
  post-deploy:
    POST-DEPLOY_VARIABLE_NAME: value

有关自定义生成和部署过程的详细信息:

TTFB_TESTED_PAGES

  • 默认值[] (空数组)
  • 版本—Adobe Commerce 2.1.4及更高版本

为指定页面配置​ 到第一个字节的时间 (TTFB)测试以测试网站性能。 为需要测试的每个页面指定绝对路径引用,或指定带有协议和主机的URL。

stage:
  post-deploy:
    TTFB_TESTED_PAGES:
       - "index.php"
       - "index.php/customer/account/create"
       - "https://example.com/catalog/some-category"

在指定要测试和提交更改的页面后,到第一个字节的时间 ​测试会在部署后阶段运行,并将每个路径的结果发布到云日志:

[2019-06-20 20:42:22] INFO: TTFB test result: 0.313s {"url":"https://staging-tkyicst-xkmwgjkwmwfuk.us-4.magentosite.cloud/customer/account/create","status":200}
[2019-06-20 20:42:22] INFO: TTFB test result: 0.408s {"url":"https://staging-tkyicst-xkmwgjkwmwfuk.us-4.magentosite.cloud/checkout/cart","status":200}

对于重定向路径,日志会报告重定向目标的路径,而不是环境变量中配置的路径。 如果指定的路径无效,日志将显示警告消息。

WARM_UP_CONCURRENCY

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

指定在高速缓存预热操作期间发送的并发请求数限制,以减少服务器负载。 此值限制并行连接的数量,对于WARM_UP_PAGES部署后变量为缓存预加载指定多个页面的环境配置非常有用。

stage:
  post-deploy:
    WARM_UP_CONCURRENCY: 4

WARM_UP_PAGES

  • 默认值index.php
  • 版本—Adobe Commerce 2.1.4及更高版本

自定义用于预加载post_deploy阶段中的缓存的页面列表。 您必须配置部署后挂接。 查看.magento.app.yaml文件的挂接部分

  • 单页 — 指定要添加到缓存的单个页。 您不必指定默认的基本URL。 以下示例缓存BASE_URL/index.php页面:

    code language-yaml
    stage:
      post-deploy:
        WARM_UP_PAGES:
          - "index.php"
    
  • 多个域 — 列出多个URL。 以下示例缓存来自两个域的页面:

    code language-yaml
    stage:
      post-deploy:
        WARM_UP_PAGES:
          - 'http://example1.com/test'
          - 'http://example2.com/test'
    
  • 多个页面 — 使用以下格式,根据特定的正则表达式模式缓存多个页面:

    code language-none
    <entity_type>:<pattern|url|product_sku>:<store_id|store_code>
    
    • entity_type:可能的变体categorycms-pageproductstore-page
    • pattern|url|product_sku:使用regexp模式或完全匹配项url筛选URL,或对所有页面使用星号(*)。 为product实体类型使用产品SKU
    • store_id|store_code:使用商店的ID或代码或星号(*)表示所有商店,您可以传递多个用|分隔的商店ID或代码

    以下示例基于这些条件缓存categorycms-page实体类型:

    • ID为1的存储的所有类别页面

    • 代码为store1store2的存储的所有类别页面

    • 代码为store_en的商店的类别页面cars

    • 所有商店的cms页面contact

    • ID为12的存储的CMS页面contact

    • 任何包含car_且以html结尾的类别页面,用于ID为2的存储

    • 包含tires_且代码为store_gb的存储的任何类别页面

      code language-yaml
      stage:
        post-deploy:
          WARM_UP_PAGES:
            - "category:*:1"
            - "category:*:store1|store2"
            - "category:cars:store_en"
            - "cms-page:contact:*"
            - "cms-page:contact:1|2"
            - "category:|car_.*?\\.html$|:2"
            - "category:|tires_.*|:store_gb"
      

    以下示例基于这些条件缓存product实体类型:

    • 所有商店的所有产品(通过编程方式限制为每个商店100个产品,以避免性能问题)

    • 商店store1的所有产品

    • 所有商店中具有sku1的产品

    • 代码为store1store2的商店的sku1产品

    • 代码为store1store2的商店的具有sku1sku2sku3的产品

      code language-yaml
      stage:
        post-deploy:
          WARM_UP_PAGES:
            - "product:*:*"
            - "product:*:store1"
            - "product:sku1:*"
            - "product:sku1:store1|store2"
            - "product:sku1|sku2|sku3:store1|store2"
      

    以下示例基于这些条件缓存store-page实体类型:

    • /contact-us页(所有商店)
    • ID为1的商店的第/contact-us
    • 代码为code1code2的商店的页面/contact-us
    code language-yaml
          stage:
            post-deploy:
              WARM_UP_PAGES:
                - "store-page:/contact-us:*"
                - "store-page:/contact-us:1"
                - "store-page:/contact-us:code1|code2"
    
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26