rabbiqmq的channel过多

原创 2018年01月08日 17:01:16

故障现象:channel 链接数过多,从openstack云平台上看反应变慢,创建删除查询各种资源,反应缓慢;从系统内部看,内存使用量大,系统负载高。

故障原因:是rabbitmq client端,在出现异常之后,不能正常的关闭channel,导致channel越来越多,每个channel都会占用系统资源,最后拖垮server端。

故障解决:

1)思路过程

定位不断创建channal的connection; 通过connection找到channel; 通过channel找到consume; 通过consume找到openstack组件 重启openstack组件

2)rabbitmq server端执行以下命令:

$ watch -n2 "rabbitmqctl list_connections channels name | sort -k1,1nr | head -20"

执行结果:

Every 2.0s: rabbitmqctl list_connections channels name | sort -k1,1nr | head -20 Mon Feb 29 10:16:45 2016

 1011   10.3.0.35:32803 -> 10.3.0.44:5672

 1823   10.3.0.35:33315 -> 10.3.0.44:5672

"1011 10.3.0.35:32844 -> 10.3.0.44:5672" 表示:"10.3.0.35:32803 -> 10.3.0.44:5672"这个connection,一共创建了1011个channel。


3)登录rabbitmq的web管理页面。

--->--->--->重新启动实例组件。
4)处理完成后重新查看channel数量是否减少
版权声明:本文为博主原创文章,未经博主允许不得转载。

Netty那点事(三)Channel与Pipeline

原文章:http://my.oschina.net/flashsword/blog/178561 Channel是理解和使用Netty的核心。Channel的涉及内容较多,这里我使用由浅入深...
  • zhangrongchao_
  • zhangrongchao_
  • 2015年05月28日 20:56
  • 1487

Netty4详解三:Netty概要讲解,全面了解Netty,做到胸有成竹

读完这一章,我们基本上可以了解到Netty所有重要的组件,对Netty有一个全面的认识,这对下一步深入学习Netty是十分重要的,而学完这一章,我们其实已经可以用Netty解决一些常规的问题了。一、先...
  • GoOnDrift
  • GoOnDrift
  • 2015年01月20日 12:18
  • 5510

golang channel的使用技巧

go的横空出世,让很多人眼前一亮,它的语法以简洁著称,并且它对多核并发的原生支持,让他在云计算和分布式领域展露头脚,它的核心围绕channel和goroutine展开。下面我们来介绍一下channel...
  • D_Guco
  • D_Guco
  • 2016年11月25日 21:53
  • 2861

深入学习golang—channel

Channel 1. 概述 “网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单。写一个Server除...
  • liangguangchuan
  • liangguangchuan
  • 2016年04月21日 13:28
  • 4891

Java Channel解析与实例

文件IO FileChannel是处理文件IO中的核心Channel实现。FileChannel不能直接构建,只能通过FileInputStream,FileOutputStream,RandomA...
  • shenzhenhair
  • shenzhenhair
  • 2013年02月20日 20:31
  • 681

Netty教程—Part2—创建Channel连接

本文由 ImportNew - 刘海波 翻译自 seeallhearall.blogspot。如需转载本文,请先参见文章末尾处的转载要求。 本文是Netty教程的第二篇。 Channel不...
  • guomei
  • guomei
  • 2014年02月25日 23:46
  • 1154

3种优雅的Go channel用法

写Go的人应该都听过Rob Pike的这句话 Do not communicate by sharing memory; instead, share memory by communicati...
  • andylau00j
  • andylau00j
  • 2016年12月30日 00:56
  • 1462

Netty中的Channel机制(上)

Channel是理解和使用Netty的核心。之前在概述中粗略讲到了事件驱动机制,在这篇文章中,我们将详细分析Channel及其的实现。ChannelPipeline的涉及内容较多,这里我使用由浅入深的...
  • DENGZHUYU
  • DENGZHUYU
  • 2014年10月22日 16:58
  • 793

为过程或函数指定了过多的参数

总结刚结束的机房合作只有一种感觉那就是:“好多好多东西自己都不会,又有好多东西在这次合作中学到了,总之就是痛并快乐着!”           接下来就谈谈在退卡时调用存储过程PROC_ReturnC...
  • liu_yujie2011com
  • liu_yujie2011com
  • 2013年12月11日 19:13
  • 8376

Java NIO通道Channel的原理与获取

通道Channel:由java.nio.channels包定义。Channel表示IO源与目标打开的连接。Channel类似于传统的"流",只不过Channel本身不能直接访问数据,Channel只能...
  • u013063153
  • u013063153
  • 2017年07月31日 23:53
  • 482
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:rabbiqmq的channel过多
举报原因:
原因补充:

(最多只允许输入30个字)