-
-
Notifications
You must be signed in to change notification settings - Fork 16k
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
Support DGRAM unix domain socket #6737
Comments
@kghost we love contribution.s |
Looking into it |
Can you provide some justification for this statement? Why is it "better"? |
To add a concrete use case for this, in Micrometer we support publishing metrics to dogstatsd (Datadog-flavor of StatsD daemon) over UDP using reactor-netty currently. We have had requests to support publishing metrics to dogstatsd via unix domain sockets in micrometer-metrics/micrometer#792, and I was excited to see that reactor-netty has support for unix domain sockets built on top of the support in netty for it. However, the netty support is limited to stream domain sockets and dogstatsd is listening on a datagram domain socket. Since we are already using reactor-netty for publishing statsd metric lines, it would be advantageous to use a built-in netty feature to also support publishing on (datagram) unix domain sockets. |
@shakuzen I am currently super busy but I would be happy to review a PR and provide feedback. So if you want to give it a go I am happy to help |
@shakuzen @normanmaurer I'm gonna look at this and will try to provide a PR for a discussion. |
I opened a PR #11423 for a discussion. I'll appreciate your feedback. |
…kqueue transport (#11423) Motivation: There are use cases when Unix domain datagram sockets are needed for communication. This PR adds such support for Epoll/KQueue. Modification: - Expose Channel, Config and Packet interfaces/classes for Unix domain datagram sockets. All interfaces/classes are in `transport-native-unix-common` module in order to be available for KQueue and Epoll implementations - Add JNI code for Unix domain datagram sockets - Refactor `DatagramUnicastTest` so that it can be used for testing also Unix domain datagram sockets - Add Unix domain datagram sockets implementation for KQueue transport - Add Unix domain datagram sockets implementation for Epoll transport Result: Fixes #6737
…kqueue transport (#11476) Motivation: There are use cases when Unix domain datagram sockets are needed for communication. This PR adds such support for Epoll/KQueue. Modification: - Expose Channel, Config and Packet interfaces/classes for Unix domain datagram sockets. All interfaces/classes are in `transport-native-unix-common` module in order to be available for KQueue and Epoll implementations - Add JNI code for Unix domain datagram sockets - Refactor `DatagramUnicastTest` so that it can be used for testing also Unix domain datagram sockets - Add Unix domain datagram sockets implementation for KQueue transport - Add Unix domain datagram sockets implementation for Epoll transport Result: Fixes #6737
…kqueue transport (netty#11423) Motivation: There are use cases when Unix domain datagram sockets are needed for communication. This PR adds such support for Epoll/KQueue. Modification: - Expose Channel, Config and Packet interfaces/classes for Unix domain datagram sockets. All interfaces/classes are in `transport-native-unix-common` module in order to be available for KQueue and Epoll implementations - Add JNI code for Unix domain datagram sockets - Refactor `DatagramUnicastTest` so that it can be used for testing also Unix domain datagram sockets - Add Unix domain datagram sockets implementation for KQueue transport - Add Unix domain datagram sockets implementation for Epoll transport Result: Fixes netty#6737
Currently only STREAM unix domian socket is supported, it would better to support DGRAM unix domain socket.
The text was updated successfully, but these errors were encountered: