56.4. 将/接收消息发送到缓存中
56.4.1. Message Headers 直到 Camel 2.7 复制链接链接已复制到粘贴板!
| 标头 | 描述 |
|---|---|
|
| 要在缓存上执行的操作。有效选项为
* GET * CHECK * ADD * UPDATE * DELETE * DELETEALL |
|
| 用于在缓存中存储消息的缓存密钥。如果 CACHE_OPERATION 是 DELETEALL,则缓存密钥是可选的 |
56.4.2. Message Headers Camel 2.8+ 复制链接链接已复制到粘贴板!
Camel 2.8 中的标头更改
标头名称和支持的值已更改为前缀 'CamelCache' 和 use mixed case。这样可以更轻松地识别和保持与其他标头分开。CacheConstants 变量名称保持不变,只是更改了其值。另外,这些标头现在在执行缓存操作后从交换中删除。
| 标头 | 描述 |
|---|---|
|
| 要在缓存上执行的操作。有效选项为 * CamelCacheGet * CamelCacheCheck * CamelCacheAdd * CamelCacheUpdate * CamelCacheDelete * CamelCacheDeleteAll |
|
| 用于在缓存中存储消息的缓存密钥。如果 CamelCacheOperation 是 CamelCacheDeleteAll,则 cache 键是可选的 |
CamelCacheAdd 和 CamelCacheUpdate 操作支持额外的标头:
| 标头 | 类型 | 描述 |
|---|---|---|
|
|
| Camel 2.11: 时间(以秒为单位)。 |
|
|
| Camel 2.11: 闲置的时间(以秒为单位)。 |
|
|
| Camel 2.11: 内容是否为 eternal。 |
56.4.3. 缓存 Producer 复制链接链接已复制到粘贴板!
向缓存发送数据涉及将有效负载定向到预先存在的或创建按需缓存中的功能。执行此操作的机制涉及
- 设置上面显示的消息交换标头。
- 确保 Message Exchange Body 包含定向到缓存的消息
56.4.4. cache Consumer 复制链接链接已复制到粘贴板!
从缓存接收数据涉及 CacheConsumer 的功能,使用事件 Listener 侦听预先存在的或创建缓存,并在任何缓存活动发生时收到自动通知(例如 CamelCacheGet/CamelCacheUpdate/CamelCacheUpdate/CamelCacheUpdate/CamelCacheDelete/CamelCacheDeleteAll)。在进行此类活动后
- 放置包含消息交换标头和包含唯一添加/更新的有效负载的消息交换正文的交换。
- 如果是 CamelCacheDeleteAll 操作,则 Message Exchange Header CamelCacheKey 和 Message Exchange Body 不会被填充。
56.4.5. 缓存处理器 复制链接链接已复制到粘贴板!
有一组 nice 处理器能够执行缓存查找并有选择地替换有效负载内容。
- 正文(body)
- token
- XPath 级别