nginx最大连接数,jmqtt优化
 2019-12-25 16:16:39   230   0   

本文最后更新于天前,文中介绍内容及环境可能已不适用.请谨慎参考.

jmqtt的代码基本摸清楚了,

调整了部分bug,增加了部分注释,修改些基础功能,集群基本功能应该没大问题了。

jetlinks搞了很久,只用mqtt的测试程序~,后面再借鉴下其他模块吧。

今天测试了下连接负载及nginx集群负载。

 

刚开始直接连接jmqtt测试10000连接,非常正常,速度也还可以,服务器上基本95%连接在10ms以内。

于是想到之前搞过的EMQTT集群,把这个java版本的jmqtt也弄下集群看下吧。

于是通过nginx配置了本机和服务器两个节点集群。

stream
{

upstream jmqqt_cluster  {

       server 192.168.100.126:31883;
       server 192.168.100.41:21883;
   }

server
 {
       listen  11883;
       proxy_connect_timeout 1s;
       proxy_pass jmqqt_cluster;
  }

}

....
http
.....

 

结果在nginx上载了跟头,连接到几百就没法连接了。

create mqtt client: 300 ok
create mqtt client: 400 ok
create mqtt client: 500 ok
客户端test511连接失败(本地ip:/192.168.100.41:10512),ChannelClosedException:Channel is closed!
客户端test510连接失败(本地ip:/192.168.100.41:10511),ChannelClosedException:Channel is closed!
客户端test514连接失败(本地ip:/192.168.100.41:10515),ChannelClosedException:Channel is closed!
客户端test512连接失败(本地ip:/192.168.100.41:10513),ChannelClosedException:Channel is closed!
客户端test515连接失败(本地ip:/192.168.100.41:10516),ChannelClosedException:Channel is closed!
java.util.concurrent.ExecutionException: org.jetlinks.mqtt.client.ChannelClosedException: Channel is closed!
	at io.netty.util.concurrent.DefaultPromise.get(DefaultPromise.java:372)
	at org.jetlinks.simulator.mqtt.MQTTSimulator.lambda$4(MQTTSimulator.java:357)

搜索后发现时linux系统文件的最大连接数和nginx的连接限制。

 

处理如下:

1、linux系统最大文件打开数, 

 

ulimit -n
1024

ubuntu系统默认最大文件句柄1024
如下修改

vim /etc/security/limits.conf 

* soft noproc 65535
* hard noproc 65535
* soft nofile 65535
* hard nofile 65535

 

2、nginx.conf配置修改,两个配置都是必须的。


worker_rlimit_nofile 65535;

events {
    worker_connections  65535;
}

nginx配置完成,最好kill掉,重写启动,这里搞了半天

 

继续jmqtt测试。

结果还行

create mqtt client: 19900 ok
create mqtt client: 20000 ok

max : 615ms
min : 31ms
avg : 83ms

> 5000ms : 0(0.00%)
> 2000ms : 0(0.00%)
> 1000ms : 0(0.00%)
> 500ms : 83(0.41%)
> 200ms : 244(1.22%)
> 100ms : 3499(17.50%)
> 10ms : 16171(80.86%)

 


 2019-12-25 16:48:41 
 0

  本文基于CC BY-NC-ND 4.0 许可协议发布,作者:野生的喵喵 固定链接: 【nginx最大连接数,jmqtt优化】 转载请注明



发表新的评论
{{s_uid}}   , 欢迎回来.
您的称呼(*必填):
您的邮箱地址(*必填,您的邮箱地址不会公开,仅作为有回复后的消息通知手段):
您的站点地址(选填):
留言:

∑( ° △ °|||)︴

(๑•̀ㅂ•́)و✧
<( ̄) ̄)>
[]~( ̄▽ ̄)~*
( ̄ˇ ̄)
[]~( ̄▽ ̄)~*
( ̄ˇ ̄)
╮( ̄▽ ̄)╭
( ̄ε(# ̄)
(⊙ˍ⊙)
( ̄▽ ̄)~*
∑( ° △ °|||)︴

文章分类

可能喜欢 

KxのBook@Copyright 2017- All Rights Reserved
Designed and themed by 野生的喵喵   1347340   38322