flume 环境可以根据不同的需求启动多个进程,并配置多个服务。
内存参数可以修改flume-env.sh 脚本中内存设置:
export JAVA_OPTS=" -Xms128m -Xmx512m -Dcom.sun.management.jmxremote"
一般分配如上大小就可以。
对应OGGpump传输段配置内存大小实例如下:
javawriter.bootoptions=
-Xmx2048m -Xms256m -XX:-UseGCOverheadLimit
-Djava.class.path=/data/ogg_for_bigdata/ggjava/ggjava.jar -Dlog4j.configuration=/data/ogg_for_bigdata/cfg/log4j.properties
可以添加参数
-UseGCOverheadLimit 防止 OOM 出现。
设置好合理的内存后,ogg的pump进程可以正常启动。
info 查看后:
File /data/ogg_for_bigdata/dirdat/ff014656
2019-03-22 14:54:59.000996 RBA 126667880
数据实时更新。
查看 stats 进程:
*** Hourly statistics since 2019-04-09 20:00:04 ***
Total inserts 589.00
Total updates 555.00
Total befores 555.00
Total deletes 0.00
Total discards 0.00
Total operations 1144.00
进程正常running
内存参数优化是调整进程挂起事务提交失败的一种方式,具体视配置环境而定。
异常报错如下:
可见内存优化的重要性!!!