如何减少cassandra服务器的负载以避免nohostavailable异常

baubqpgj  于 2021-06-10  发布在  Cassandra
关注(0)|答案(1)|浏览(376)

我运行的是5节点ApacheCassandra集群(3.11.4),每个节点有48 gb ram、12 gb堆内存和6个VCPU。我可以在cassandra服务器节点上看到很多负载(18GB),即使在cassandra服务器中没有数据处理。我可以看到很多gc暂停,因此我可以在尝试将数据推送到cassandra时看到“nohostavailable”异常。
请建议我如何减少此负载,以及如何避免连接失败“nohostavailable”。

ID                     : a65c8072-636a-480d-8774-2c5704361bec
Gossip active          : true
Thrift active          : true
Native Transport active: true
Load                   : 18.07 GiB
Generation No          : 1576158587
Uptime (seconds)       : 205965
Heap Memory (MB)       : 3729.16 / 11980.81
Off Heap Memory (MB)   : 12.81
Data Center            : dc1
Rack                   : rack1
Exceptions             : 21
Key Cache              : entries 2704, size 5.59 MiB, capacity 100 MiB, 1966 hits, 4715 requests, 0.417 recent hit rate, 14400 save period in seconds
Row Cache              : entries 0, size 0 bytes, capacity 0 bytes, 0 hits, 0 requests, NaN recent hit 
rate, 0 save period in seconds
Counter Cache          : entries 0, size 0 bytes, capacity 50 MiB, 0 hits, 0 requests, NaN recent hit rate, 7200 save period in seconds
Chunk Cache            : entries 25, size 1.56 MiB, capacity 480 MiB, 4207149 misses, 4342386 requests, 0.031 recent hit rate, NaN microseconds miss latency
Percent Repaired       : 34.58708788430304%
Token                  : (invoke with -T/--tokens to see all 256 tokens)
jdzmm42g

jdzmm42g1#

如果你有48gb的内存,我建议至少要便宜16gb或20。确保您使用的是g1gc(java8中的默认值)。
但是nohostavailable可能取决于您使用的一致性级别和其他因素。。
另一方面,您可以考虑限制您的应用程序—有时推得较慢可能会导致更好的吞吐量。

相关问题