load balance problem among riakc_pb_socket processes when get objects?
mjollnir.ray at gmail.com
Sun Jul 7 02:01:44 EDT 2013
It looks like there is a load balance problem when client app try to
parallel get objects(each object size is about 2MB) using multi-
riakc_pb_socket processes. some process work fine, which get object in two
hundred ms at most, but some processes always timeout(get_timeout=60000ms).
It behave like only few riakc_pb_socket process can get objects well. if
there are 2 or more, things go bad.
I used riakpool to pool the riakc_pb_socket process, check-out one
riakc_pb_socket, get-object, check-in. I also used riakc_pb_socket:start/2
directly. There's no difference.
I adjust riak_api config: set pb_backlog=64, nothing changed.
I also tried some old riak-erlang-client version, such as 1.3.0, nothing
my riak is official riak-1.3.2_amd64.deb for ubuntu 12.04 server,
riak-erlang-client is 1.4.0.x
there's 5 riak-nodes in 5 physical intel-atom PC, client app is located
with riak-node, which means client app only connect to local riak-node.
By comparison, put operation has no this problem. I'm a little annoyed
about this problem. Did I do something wrong, is there something i can do
to improve the parallel get operation?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the riak-users