实现一级缓存
数据墙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。
说明
- 一级缓存仅存在于内存中。
- 最适合读多写少、数据波动较低的场景。
