1

我一直在尝试使用 aeron 集群,我不清楚的一件事是如何处理节点具有 10 GB 状态的应用程序......这种状态在内存中,并通过播放事件来累积。

但是,如果我启动快照(只能在领导者上),这显然会阻塞,因为您不能继续应用事件并同时拍摄快照……对于延迟关键的应用程序,显然您不能在拍摄快照时等待几秒钟。

想到的一种解决方案是,追随者可以拍摄快照,当它完成后赶上主人然后接管,当拍摄快照并且日志处于正确状态时,您知道您的快照是有效的。这样您就有几秒钟的时间来拍摄快照。

或者,当它尝试拍摄快照时,您是领导者,将领导者移交给最新的追随者,拍摄快照,然后如果需要可以再次接管主人......不会阻止您的客户。

我做错了什么,还是误解了快照?

任何帮助表示赞赏,这个惊人的图书馆没有太多信息。至少我找不到这个问题的答案。

4

1 回答 1

2

此功能有一个未解决的问题:https ://github.com/real-logic/aeron/issues/1263

于 2021-12-02T02:50:11.327 回答