netty5/transport-native-epoll
Norman Maurer bb3aed78cd 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:23:18 +01:00
..
src Remove bottleneck while create InetSocketAddress in native transport 2014-12-12 18:23:18 +01:00
pom.xml Fix Native EPOLL Build Failure 2014-09-17 20:56:12 +02:00
README.md Introduce a native transport for linux using epoll ET 2014-02-15 22:42:07 +01:00

Native transport for Linux

See our wiki page.