netty5/transport-native-epoll
Norman Maurer 08684cb749 Remove bottleneck while create InetSocketAddress in native transport
Motivation:

Everytime a new connection is accepted via EpollSocketServerChannel it will create a new EpollSocketChannel that needs to get the remote and local addresses in the constructor. The current implementation uses new InetSocketAddress(String, int) to create these. This is quite slow due the implementation in oracle and openjdk.

Modifications:

Encode all needed informations into a byte array before return from jni layer and then use new InetSocketAddress(InetAddress, int) to create the socket addresses. This allows to create the InetAddress via a byte[] and so reduce the overhead, this is done either by using InetAddress.getByteAddress(byte[]) or by Inet6Address.getByteAddress(String, byte[], int).

Result:

Reduce performance overhead while accept new connections with native transport
2014-12-12 18:15:55 +01:00
..
src Remove bottleneck while create InetSocketAddress in native transport 2014-12-12 18:15:55 +01:00
pom.xml [maven-release-plugin] prepare for next development iteration 2014-10-29 11:48:40 +01:00
README.md Introduce a native transport for linux using epoll ET 2014-02-15 22:27:43 +01:00

Native transport for Linux

See our wiki page.