Skip to content

实现一级缓存

数据墙DBW中的一级缓存可以通过将实体结果临时缓存到内存中,减少对数据库的重复请求。对于高频查询,这种缓存能够提升性能,并避免不必要地命中数据库。

全局启用缓存

若要启用缓存,请设置全局运行时配置:

json
"runtime": {
  "cache": {
    "enabled": true,
    "ttl-seconds": 60
  }
}
  • enabled:必需。用于全局启用缓存。
  • ttl-seconds:可选。定义缓存项默认的生存时间(秒)。

运行时缓存设置参考页可在对应专题中查看。

为每个实体启用缓存

每个实体还必须单独选择启用缓存:

json
"MyEntity": {
  "cache": {
    "enabled": true,
    "ttl-seconds": 30,
    "level": "L1"
  }
}
  • enabled:必需。为该实体启用缓存。
  • ttl-seconds:可选。若未指定,则继承全局 TTL 值。
  • level:可选。控制使用哪些缓存层级。L1 只使用内存缓存;L1L2(默认)同时使用内存缓存和分布式缓存。

实体缓存设置参考页可在对应专题中查看。

NOTE

本节描述的 数据墙DBW 2.0 功能当前为预览版,在正式发布前可能会发生变化。相关 2.0 新增内容页面可在对应专题中查看。

行为

  • 仅适用于 REST 终结点。
  • 按“路由 + 参数”维度工作。
  • 当数据被修改(create、update、delete)时,缓存会失效。
  • 实体级 ttl-seconds 会覆盖全局 ttl-seconds

说明

  • 一级缓存仅存在于内存中。
  • 最适合读多写少、数据波动较低的场景。

相关内容

数据墙DBW 产品文档与开发指南。