-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider using NIO libraries for UDP #20
Comments
Also, take a look at finn-no@5b0e893 and evaluate the lmax-disruptor |
See also sgp@fa0b0b1 |
Yes, this has been implemented in finn-no@5d34f15#diff-d41d8cd98f00b204e9800998ecf8427e we've been using this in production at Norway's busiest website for 5 months now. |
I'm not sure I want to introduce a dependency on a 3rd party library like the lmax-disruptor, but moving to NIO, and batching per #15, does seem compelling. |
Under heavy stress testing, we noticed this synchronization in java.nio.DatagramChannel which pretty significantly reduced our throughput:
We're still evaluating options, but I'm curious if PRs for this are at all likely to be accepted, or should we just enjoy life with a forked driver? |
On the dogstatsd fork of this project, some performance improvements were made in this pull request: indeedeng@5d34f15
Consider porting these changes into the java-statsd-client. I'm not actually sure that the NIO UDP client affords any benefit, so worth doing some reading first. The batching of messages so as to fit as many as possible into the MTU will relate to #15
The text was updated successfully, but these errors were encountered: