У меня есть установка cassandra с одиночным DC 6 Ring Ring с RF: 6 и Read: CL: 1. Теперь время от времени, если конкретный узел получает много запросов, которые, в свою очередь, передаются на все узлы (причина RF), он попадает в Compaction с CMS и, наконец, с ParNew, где все кольцо попадает в зависшую ситуацию, которая в Включите, делая это довольно непригодным для использования. Я обнаружил, что мы можем решить эту проблему только с помощью увеличения размера кучи или настройки кода cassandra только для чтения с локального узла (так как RF: 6 гарантирует, что каждый узел имеет одинаковые данные, хотя восстановление и т. Д. Должны выполняться отдельно).
Как рассчитать размер кучи для узла Cassandra (у меня есть два Keyspace с общим количеством 14 CF, кроме System CF). Как и в wiki cassandra, это должен быть как минимум размер кучи: memtable_throughput_in_mb * 3 * number of hot CFs + 1G + internal caches
где memtable_throughput_in_mb = 128mb для моей настройки. Максимальный размер строки для конкретного CF должен иметь значение здесь. Я не использую какую-либо строку или кеш ключа. Может кто-нибудь предложить мне то же самое.