gpt4 book ai didi

cassandra - cassandra 中的 G1GC 垃圾收集

转载 作者:行者123 更新时间:2023-12-01 12:13:01 25 4
gpt4 key购买 nike

我们正计划将 GC 从 CMS 移至 G1GC。如果我们更改为 G1GC,这些参数是否仍需要从 dse 移至 apache。使用 G1GC 时这些参数如何影响垃圾收集

-XX:ThreadPriorityPolicy=42
-XX:+HeapDumpOnOutOfMemoryError
-Xss256k

# Larger interned string table, for gossip's benefit (CASSANDRA-6410)
-XX:StringTableSize=1000003
-XX:+AlwaysPreTouch
# Disable biased locking as it does not benefit Cassandra.
-XX:-UseBiasedLocking

`# Enable thread-local allocation blocks and allow the JVM to automatically
-XX:+UseTLAB
-XX:+ResizeTLAB
-XX:+UseNUMA
-XX:+PerfDisableSharedMem
-Djava.net.preferIPv4Stack=true`

最佳答案

这些在 CMS 和 G1 之间几乎没有区别。
TLAB与 CMS 相同,它可以通过为每个线程提供一个缓冲区来提供帮助,它们可以在 eden 空间中直接分配该缓冲区,这意味着没有线程安全分配的争用或要求(要快得多)。但是,如果您有很多事件线程(例如,连接了 1000 个以上事件客户端的大型集群),由于每个线程缓冲区最终都会变小,并且随着不同线程在不同时间变为事件状态,调整大小会变得不准确。此外,如果发生较大的插入,则分配将无法放入缓冲区,并且最终还是会在共享空间中进行分配。也就是说,使用 TLAB/resize 运行几乎总是更好。
UseBiasedLocking也与 CMS 相同,没有太多同步,STW 暂停会影响事情。
UseNUMA不适用于 g1 或 cms,仅适用于并行收集器。设置这个没有任何作用
PerfDisableSharedMem牺牲您调试和诊断性能问题的能力,以换取在刷新 hsperfdata 时防止可能的暂停
preferIPv4Stack不要使用ipv6

关于cassandra - cassandra 中的 G1GC 垃圾收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50337593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com