Increasing listen() backlog on riak's HTTP api

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Increasing listen() backlog on riak's HTTP api

Rohit Sanbhadti
Hi all,

I’ve been trying to increase the backlog that riak uses when opening a listening socket with HTTP, as I’ve seen a fair number of backlog overflow errors in my use case (we have a 10 node riak cluster which takes a lot of traffic, and we certainly expect the peak of concurrent traffic to exceed the default backlog size of 128). I just found out that there appears to be no way to customize the backlog that riak passes to webmachine/mochiweb, as indicated by this issue (https://github.com/basho/riak_api/issues/108).  Can anyone recommend a way to increase this backlog without having to modify and recompile the riak_api, or without switching to protocol buffers? Is there any set of erlang commands I can run from the attachable riak console to change the backlog and restart the listening socket?

--
Rohit S.

_______________________________________________
riak-users mailing list
[hidden email]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
Reply | Threaded
Open this post in threaded view
|

Re: Increasing listen() backlog on riak's HTTP api

Luke Bakken
Hi Rohit,

Mochiweb's max connections are set as an argument to the start()
function. I don't believe there is a way to increase it at run time.

If you're hitting the listen backlog, your servers aren't able to keep
up with the request workload. Are you doing any listing or mapreduce
operations?
--
Luke Bakken
Engineer
[hidden email]


On Wed, Oct 19, 2016 at 10:20 PM, Rohit Sanbhadti
<[hidden email]> wrote:

> Hi all,
>
> I’ve been trying to increase the backlog that riak uses when opening a listening socket with HTTP, as I’ve seen a fair number of backlog overflow errors in my use case (we have a 10 node riak cluster which takes a lot of traffic, and we certainly expect the peak of concurrent traffic to exceed the default backlog size of 128). I just found out that there appears to be no way to customize the backlog that riak passes to webmachine/mochiweb, as indicated by this issue (https://github.com/basho/riak_api/issues/108).  Can anyone recommend a way to increase this backlog without having to modify and recompile the riak_api, or without switching to protocol buffers? Is there any set of erlang commands I can run from the attachable riak console to change the backlog and restart the listening socket?
>
> --
> Rohit S.
>
> _______________________________________________
> riak-users mailing list
> [hidden email]
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

_______________________________________________
riak-users mailing list
[hidden email]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com