如何在 nats 流媒体服务器中限制 raft.log 大小?
How to limit raft.log size in nats streaming server?
我在集群模式下设置了 nats 流服务器(根据找到的说明 here),我注意到 raft.log 在我进行基准测试时增长得非常快它的负载约为 200msg/s,其中消息大小约为 1MB。
我使用默认频道设置:
---------- Store Limits ----------
Channels: 100 *
--------- Channels Limits --------
Subscriptions: 1000 *
Messages : 1000000 *
Bytes : 976.56 MB *
Age : unlimited *
Inactivity : unlimited *
是否有任何配置参数可以帮助限制大小或截断文件?
我们使用 go.etcd.io/boltdb 作为 RAFT 日志后端,这不提供 truncation/compaction。日志包含在 NATS Streaming 系统中复制的所有数据,但是当节点同步时,快照应该以某个随机(但不少于 2 分钟)的间隔发生。这应该允许 RAFT 从它的日志中删除条目,这意味着当添加新数据时,空闲的 space 应该被重用并且不会导致主日志文件的增长。当然,如果添加的 rate/amount 数据超过了上一个快照中可用的 space,则 raft.log 文件将会增长。
我在集群模式下设置了 nats 流服务器(根据找到的说明 here),我注意到 raft.log 在我进行基准测试时增长得非常快它的负载约为 200msg/s,其中消息大小约为 1MB。
我使用默认频道设置:
---------- Store Limits ----------
Channels: 100 *
--------- Channels Limits --------
Subscriptions: 1000 *
Messages : 1000000 *
Bytes : 976.56 MB *
Age : unlimited *
Inactivity : unlimited *
是否有任何配置参数可以帮助限制大小或截断文件?
我们使用 go.etcd.io/boltdb 作为 RAFT 日志后端,这不提供 truncation/compaction。日志包含在 NATS Streaming 系统中复制的所有数据,但是当节点同步时,快照应该以某个随机(但不少于 2 分钟)的间隔发生。这应该允许 RAFT 从它的日志中删除条目,这意味着当添加新数据时,空闲的 space 应该被重用并且不会导致主日志文件的增长。当然,如果添加的 rate/amount 数据超过了上一个快照中可用的 space,则 raft.log 文件将会增长。