gpt4 book ai didi

java - 如何使用每小时滚动存储文件创建历史记录队列(cq4)

转载 作者:行者123 更新时间:2023-11-30 06:46:22 25 4
gpt4 key购买 nike

您好,我是 Chronicle Queue 的新手,我有一些疑问,

  1. 我想创建一个包含每小时滚动存储文件的 ChronicleQueue 我该如何创建一个。我按如下方式创建作家,

    ChronicleQueue queue = ChronicleQueueBuilder.single(chroniclePath).build();
    ExcerptAppender appender = queue.acquireAppender();
  2. 另外,我想在消费者完成读取后删除文件,我可以为其创建一个编写器,如下所示,

    ChronicleQueue queue = ChronicleQueueBuilder.single(chroniclePath).storeFileListener(new StoreFileListener() {

    @Override
    public void onReleased(int cycle, File file) {

    if (file != null) {
    try {
    file.delete();
    } catch (Exception e) {
    //log
    }
    }
    }
    }).build();

我想知道在这种情况下我的做法是否正确。

  • 我们是否还需要将周期数存储在读取器中以便在重新启动后读取。目前我只存储索引。

  • 最佳答案

    您可以在构建器中设置滚动周期

    ChronicleQueue queue = ChronicleQueueBuilder.single(chroniclePath)
    .rollCycle(RollCycles.HOURLY)
    .build();
    ExcerptAppender appender = queue.acquireAppender();

    监听器可用于删除旧文件。

    通常情况下,你只需要为阅读器存储索引(循环是索引的一部分)

    关于java - 如何使用每小时滚动存储文件创建历史记录队列(cq4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43632523/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com