对于这条信息意味着什么,以及是否有什么行动可以采取,有很多困惑:
... NoSpamLogger.java:94 - Maximum memory usage reached (536870912), cannot allocate chunk of 1048576
这是否构成一个问题,卡桑德拉运营者应该关注吗?
发布于 2022-07-25 04:04:56
Cassandra在读取磁盘时使用缓冲池。解压缩的SSTable块存储在从堆外内存分配的缓存中,该缓存的操作方式与OS页缓存非常类似。
当节点繁忙时,期望缓存比空间释放的速度更快是很正常的。当发生这种情况时,Cassandra会在INFO
级别记录这条消息,因为没有任何操作要采取--缓冲区无论如何都会得到分配,但不会从缓存中分配。
块缓存大小由file_cache_size_in_mb
控制,默认值为512 of。虽然可以增加缓存大小,但对节点的影响确实不大,因为除非节点重载,无法跟上读取和重复填充块缓存,否则对缓存填充没有重大影响。
通常情况下,当集群大小正确时(即足够数量的节点),您几乎看不到此消息(如果有的话)。
https://dba.stackexchange.com/questions/314796
复制相似问题