realglobe-Inc / sugos

A high-level RPC framework to make remote controlling super easy.
Apache License 2.0
9 stars 0 forks source link

Hub に接続できる Actor, Caller の数の上限についての調査結果 #13

Closed FujiHaruka closed 7 years ago

FujiHaruka commented 8 years ago

1. Socket.IO の場合

参考値として、Socket.IO のみを使うとどのくらい接続できるか調べた。以下の結果はマシンスペックによっても異なると思われる。

Socket.IO 単純接続

クライアントをひたすら接続させると、1 つの Socket.IO サーバーにつき約 20000 〜 30000 個が限界。

サーバーが返事をしなくなる。新規の接続はできなくなるが、メッセージの送受信は問題なくできた。

{ Error: xhr poll error
    at XHR.Transport.onError (/home/fujiharuka/sg/sugos-browser-connect-test/node_modules/engine.io-client/lib/transport.js:62:13)
   ...
    at Timer.listOnTimeout (timers.js:202:5) type: 'TransportError', description: 503 }

Socket.IO ブラウザからの接続

ブラウザからの接続は 260 程度が限界。

2. SUGOS の場合

SUGOS 単純接続

Hub を立ててひたすら Actor をつなげると、約 4000 個接続できる。 Actor, Caller のペアを接続させても最大値はほぼ変化しない。

SUGOS ブラウザからの接続

ブラウザからの接続は 260 程度が限界。

3. 考察