分布式吃瓜Docker+

MQ RabbitMQ 高可用集群(七):集群应用监控

2021-04-25  本文已影响0人  小P聊技术

1 集群问题

1.1 实际问题

生产注意问题:https://blog.csdn.net/astiantian/article/details/84231578

按默认配置安装完RabbitMQ后,发现其File descriptors(即文件描述符)和Socket descriptors都特别低,分别为924和829。客户端(消费者)保持长连接时很容易就将socket占满。

image-20210413113538171.png

2 核查问题

经查该问题是由于系统当前的ulimit -n仅为1024,rabbitmq在启动时会进行如下换算:

file_limit = 1024 - 100; // 924
sockets_limit = trunc((1024 - 100) * 0.9 - 2); //829

2 集群优化

以下三种方式配置完成后都确认 >= 我们需要的连接数后,重启RabbitMQ,注意需要连Erlang一起重启,重启后即可看到效果。

2.1 系统级别

系统级别,配置文件为:/proc/sys/fs/file-max,如果太小需要修改

[root@localhost ~]# cat /proc/sys/fs/file-max 
778230
[root@localhost ~]# cat /proc/sys/fs/file-nr 
2432    0   778230

2.2 用户级别

用户级别,配置文件为:/etc/security/limits.conf

[root@localhost ~]# * - nofile 65536

2.3 进程级别

进程级别,即ulimit -n

#修改
[root@localhost ~]# ulimit -n 65536
image-20210413114006693.png

3 相关信息

上一篇:MQ RabbitMQ 高可用集群(六):集群管理

博文不易,辛苦各位猿友点个关注和赞,感谢

上一篇 下一篇

猜你喜欢

热点阅读