37.25. 使用基于文件的幂等存储库
在本节中,我们将使用基于文件的幂等存储库 org.apache.camel.processor.idempotent.FileIdempotentRepository
,而不是基于内存的,用作默认值。
此仓库使用第一级缓存以避免读取文件存储库。它将仅使用文件存储库来存储第一级别缓存的内容。因此,存储库可以在服务器重启后保留。它将在启动时将文件的内容加载到第一级缓存中。文件结构非常简单,因为它将密钥存储在文件的单独行中。默认情况下,文件存储的大小限制为 1mb。当文件增长更大的 Camel 时,将通过将第一级缓存刷新到一个新的空文件来截断文件存储。
我们使用 Spring XML 配置我们的存储库,创建文件幂等存储库,并定义文件消费者来使用我们的带有 idempotentRepository
的存储库,以指示 Registry 查找: