一次spark streaming 性能抖动问题解决和分析

问题现象

业务通过sparkstream处理10000+上数据大致需要30s时间,但偶发出现超过30s的情况

问题分析

sparkstream是内存密集型的应用,一般出现延迟通常是因为以下两个原因:

  • 内存分配过程出现延迟,出现GC问题,通常是内存资源问题导致
  • 数据源侧录入数据出现卡顿现象
  1. 从以往经验看,内存分配延迟通常是透明巨页导致延迟现象的发生,可以通过关闭透明巨页来解决,建议:
    cat /sys/kernel/mm/transparent_hugepage/enabled
    [always] madvise never #never 禁用透明巨页
    cat /sys/kernel/mm/transparent_hugepage/defrag
    [always] madvise never #never 禁用透明巨页
    cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
    [always] madvise never #never 禁用透明巨页
    cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
    [always] madvise never #never 禁用透明巨页
    验证:cat /proc/sys/vm/nr

你可能感兴趣的:(spark,大数据组件线上问题分析,spark,大数据,分布式)