文档首页
MySQL 8.4 参考手册
相关文档 下载此手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  ...  /  XCom 缓存管理

20.7.6 XCom 缓存管理

用于组复制的组通信引擎 (XCom,Paxos 变体) 包含一个用于存储在组成员之间交换的消息 (及其元数据) 的缓存,这些消息是共识协议的一部分。除了其他功能外,消息缓存还用于恢复由在无法与其他组成员通信一段时间后重新连接到组的成员错过的消息。

可以使用 group_replication_message_cache_size 系统变量为 XCom 的消息缓存设置缓存大小限制。如果达到缓存大小限制,XCom 将删除已决定和交付的最旧条目。所有组成员应设置相同的缓存大小限制,因为无法访问的成员在尝试重新连接时会随机选择任何其他成员来恢复错过的消息。因此,每个成员的缓存中都应提供相同的消息。

确保您的系统中有足够的内存可用于您选择的缓存大小限制,并考虑 MySQL 服务器其他缓存和对象池的大小。请注意,使用 group_replication_message_cache_size 设置的限制仅适用于存储在缓存中的数据,而缓存结构需要另外 50 MB 的内存。

在为 group_replication_message_cache_size 选择值时,请考虑在成员被驱逐之前的这段时间内预期的消息量。这段时间由 group_replication_member_expel_timeout 系统变量控制,该变量确定允许成员返回到组而不是被驱逐的等待时间 (最多一个小时),除了 初始的 5 秒检测期。