GNU/Linuxでファイル記述子の最大制限を増やしようとしました。
$ ulimit -n 999999
サーバーを。で起動しています-env ERL_MAX_PORTS 4096。
test utilを使用しているときはいつでも、1012-1024が接続を開いた後、「Closed:socket_closed_remotely」および「Closed:emfile」というメッセージが表示されます。
GNU/Linuxでファイル記述子の最大制限を増やしようとしました。
$ ulimit -n 999999
サーバーを。で起動しています-env ERL_MAX_PORTS 4096。
test utilを使用しているときはいつでも、1012-1024が接続を開いた後、「Closed:socket_closed_remotely」および「Closed:emfile」というメッセージが表示されます。
私は自分の間違いを見つけました。私ulimitは別のシェルを呼びました。
からmax渡されるオプションを微調整してみてください。ここで、はアプリケーションの名前です。たとえば、というアプリケーションの場合、ファイル内に次のような関数があります。mochiweb_socket_server:start/1APPLICATION_web:start/1APPLICATIONhelloworldstart/1./src/helloworld_web.erl
start(Options) ->
{DocRoot, Options1} = get_option(docroot, Options),
Loop = fun (Req) ->
?MODULE:loop(Req, DocRoot)
end,
mochiweb_http:start([{name, ?MODULE}, {loop, Loop} | Options1]).
mochiweb_http:start/1オプションを含めるように呼び出しを変更しますmax。
mochiweb_http:start([{max, 1000000}, {name, ?MODULE}, {loop, Loop} | Options1]).
お役に立てば幸いです。