jubatus/jubatus — Issue #4: make 'convert' work concurrently
Author: kuenishi
Created: 2011-11-14 00:46:09+00:00
State: open

(sorry for Japanese)

classifyでは並行に動いている
trainでconverter_->convertをwriter lockの外側に出してjmeterで負荷をかけるとorg.msgpack.rpc.error.RemoteError: timeout といわれる
setsockoptで10秒を指定しているので、サーバー側でread(2)かwrite(2)がタイムアウトしてソケットがclose(2)されているものと思われる
readかwriteなのかは分からない
CPUは200%（jmeterのスレッド数分だけ）使いきっている
timeoutしていないリクエストの中で最大のTATは31000msくらい（なので、10秒のタイムアウトでサーバー側でエラーになったと判断した
安定動作を優先して、train全体をwriter lockで守るように修正（なぜか分からないが安定動作する
rpc_serverに渡すtimeoutを1024とかにしても同様の事象は起きる