Connection multiplexing in the Erlang client

Paulo Almeida paulo.m.m.almeida at gmail.com
Sat Jan 2 08:26:08 EST 2016


Hi Luke,

I have not hit a limit yet and the current implementation using a pool of
TCP connections works fine.

I considered this after taking a look at the RethinkDB Elixir client, which
uses multiplexing. RabbitMQ, another component in my infra-structure allows
up to 65536 logic channels in a single TCP Connection. I'm using same Riak
cluster as a persistence layer to several small apps, and each apps keeps a
pool of TCP connection spread across all nodes in the cluster. I'm just
considering the options to keep the file handle count lower on the server
side.

Regards,

Paulo

On Thu, Dec 31, 2015 at 5:21 PM, Luke Bakken <lbakken at basho.com> wrote:

> Hi Paulo,
>
> Why are you considering this? Are you running into issues or
> limitations using the current Erlang client?
>
> --
> Luke Bakken
> Engineer
> lbakken at basho.com
>
> On Thu, Dec 31, 2015 at 12:47 AM, Paulo Almeida
> <paulo.m.m.almeida at gmail.com> wrote:
> >
> > Hi,
> >
> > A poolboy or other connection pool based solution still means 1 open tcp
> connection per worker. I'm exploring the option of having a single TCP
> connection (actually 1 for each Riak node) and then multiplex concurrent
> requests to a DB node in a single TCP connection (think HTTP/2 TCP
> connection multiplexing).
> >
> > Thanks.
> >
> > Paulo
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20160102/415e7bc3/attachment-0002.html>


More information about the riak-users mailing list