私は、Ejabberd ノードで約 64000 (正確には 64,464) を超えるユーザーをオンラインにするように制限されています。xml スクリプト (Tsung) を使用して、ノードでユーザーをオンラインにしています。
私はすでに記述子の制限を引き上げました:
Eshell V5.10.4 (abort with ^G)
1> os:cmd("ulimit -n").
"1045000\n"
1 つの奇妙な観察結果は次のとおりです (ここでは、使用可能なポート数を整数値として期待します)。
2> os:getenv("ERL_MAX_PORTS").
false
また、ejabberdctl.cfg ファイルの「ERL_MAX_PORTS」は 704500 に設定されています。
ERL_MAX_PORTS=704500
1 つの Ejabberd ノードには、オンラインにできる最大ユーザー数に制限があると思います。これは、マシンまたは何かに依存するメモリである可能性があります。
さらに、これは /etc/security/limits.conf がどのように見えるかです:
#* soft core 0
#* hard rss 10000
#@student hard nproc 20
#@faculty soft nproc 20
#@faculty hard nproc 50
#ftp hard nproc 0
#@student - maxlogins 4
root soft nofile 1045000
root hard nofile 1045000
次のように、同じ Linux マシンで実行する別の仮想ホストを作成して試してみることができます。
hosts:
- "devlab"
- "devlab2"
しかし、これがどのように異なるかはわかりません。
ポインタをいただければ幸いです。
ありがとう!