【问题标题】:How to enable rest cache in strapi?如何在 strapi 中启用剩余缓存?
【发布时间】:2022-11-28 19:20:28
【问题描述】:

下午好! 使用 redis 设置 strapi-plugin-rest-cache。连接到 redis 通过,调试显示一切正常。实体出现在redis中。但是请求是同时执行的,有缓存和没有缓存。 还能看到什么?

"rest-cache": {
    config: {
      provider: {
        name: "redis",
        options: {
          max: 32767,
          connection: "default",
        },
      },
      strategy: {
        enableEtag: true,
        debug: true,
        maxAge: 3600000,
        hitpass: false,
        keys: {
          useQueryParams: true,
        },
        contentTypes: [
          "api::homework.homework",
          "api::homework-task.homework-task",
          "api::homework-part.homework-part",
          "api::task.task",
        ],
      },
    },
  },

Debug information from console

Another one

我尝试更改配置中的各种参数,但没有任何结果。 启动服务器后,第一个请求将在 ~1 秒内执行。此外,如果您立即发送第二个,则它会在 500 毫秒内运行。如果您等待大约 5 秒并再次发送请求,那么它又将是 ~ 1 秒。它不依赖于缓存,它可以在有和没有缓存的情况下工作。

【问题讨论】:

    标签: api rest caching strapi


    【解决方案1】:

    以下是让 Redis 在 Strapi 中工作的步骤:

    1. 安装包:strapi-plugin-redisstrapi-plugin-rest-cache

    2. 创建 Redis 主机并将其添加到env,或直接添加到config。您可以使用redislabs 进行测试

    3. 添加到config

      { “redis”:{ “启用”:是的, “配置”:{ “连接”:{ “默认”: { “联系”: { “主机”:“REDIS_HOST”, “端口”:“REDIS_PORT”, “密码”:“REDIS_PASS” }, “设置”:{ “调试”:真 } } } } }, “休息缓存”:{ “启用”:是的, “配置”:{ “供应商”:{ "名称": "redis", “getTimeout”:5000 }, “战略”: { “内容类型”:[ { "contentType": "api::homework.homework", “hitpass”:假 } ], “调试”:真 } } } }

    4. 你可以构建一个项目,如果它不起作用(不记得我是否为这个插件构建它。)

      jsonblob 上的网址:http://jsonblob.com/1046745919110004736

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-20
      • 2012-01-03
      • 2016-09-30
      • 1970-01-01
      • 2023-03-04
      • 2020-01-11
      • 2011-03-02
      • 1970-01-01
      相关资源
      最近更新 更多