系统增加对hiveserver的负载均衡及单个server挂掉的保障

来源:互联网 发布:淮南大数据概念 编辑:程序博客网 时间:2024/06/05 02:32

转载: http://blog.csdn.net/wf1982/article/details/7087101


前期,dip-data-analyze 实现了线上的基本功能,这段时间,随着本部门及其他部门在上面跑任务增多,对hiveserver使用并发要求越来越高。


之前碰到过很多次 hiveserver发生stackoverflow问题,发生该问题后,hiveserver就会很快失效,表现是进程在,端口通,但是不再接受任务。


原因是hiveserver设置方法栈较低,之前-Xss=128k,上周五更新为512k ,到今天已经连续运行一周,目前系统稳定。


同时为了保障hiveserver挂掉或失效情况下,dip-data-analyze照样能正常运行,增加了负载均衡及转发任务及黑名单机制。逻辑图:




目前系统性能上存在一个问题就是 resin  jvm 内存使用上 。现在设置最大堆内存3.8g,新生代2g,gc使用cms,年老代 在45%时gc,然后预估上限值 预估下线 分别为45% 30%。使用 linux top -M 观察 系统在运行2小时后 会从百兆级迅速增长到4g甚至以上。但是使用jmap -heap 或者 jmap -histo 等查看,堆一般使用在800m左右,多时到1.5g。


表名 jvm在任务过来后,分配内存给新对象,同时gc,但是 并没有 和 预估上限值 预估下线 分别为45% 30%设定的那样去收缩已分配内存,虽然已经gc掉.


欢迎朋友们 讨论 :)

原创粉丝点击