Go to file
Norman Maurer f20439b6d3 Various performance optimizations in OpenSslEngine
Motivation:

There are various places in OpenSslEngine wher we can do performance optimizations.

Modifications:

- Reduce JNI calls when possible
- Detect finished handshake as soon as possible
- Eliminate double calculations
- wrap multiple ByteBuffer if possible in a loop

Result:

Better performance
2015-02-09 06:20:19 +01:00
all Fix missing version properties of transport-epoll in all-in-one JAR 2014-10-21 22:36:10 +09:00
buffer Implement internal memory access methods of CompositeByteBuf correctly 2014-12-30 15:56:53 +09:00
codec Determine CompositeByteBuf implementation by using ByteBufAllocator 2015-02-08 15:46:06 +01:00
codec-dns Add EDNS support to DnsQueryEncoder 2014-10-16 17:05:08 +09:00
codec-haproxy [maven-release-plugin] prepare for next development iteration 2014-08-16 03:27:42 +09:00
codec-http Allow to use WebSocketClientHandshaker and WebSocketServerHandshaker with HttpResponse / HttpRequest 2015-02-06 10:46:07 +01:00
codec-http2 Http2DefaultFrameWriter direct write instead of copy 2015-02-06 11:56:14 -08:00
codec-memcache Add proxy support for client socket connections 2014-10-14 12:29:08 +09:00
codec-mqtt Fix dependency issues with hamcrest 2014-12-04 17:59:15 +09:00
codec-socks Add proxy support for client socket connections 2014-10-14 12:29:08 +09:00
codec-stomp Headers set/add/contains timeMillis methods 2014-12-06 22:40:28 +09:00
common Reorder PlatformDependent.isRoot() check 2015-02-08 12:00:16 +09:00
example Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
handler Various performance optimizations in OpenSslEngine 2015-02-09 06:20:19 +01:00
handler-proxy Use Proxy-Authorization instead of Authorization for proxy authentication 2014-11-20 20:41:09 +09:00
license Implemented LZMA frame encoder 2014-09-15 15:05:36 +02:00
microbench Fix ByteBufUtilBenchmark on utf8 encodings. 2014-12-31 20:26:42 +09:00
resolver Name resolver API and DNS-based name resolver 2014-10-16 17:05:20 +09:00
resolver-dns Remove thepiratebay.se from the test domain list 2014-12-22 22:35:17 +09:00
tarball [maven-release-plugin] prepare for next development iteration 2014-08-16 03:27:42 +09:00
testsuite Allow to use WebSocketClientHandshaker and WebSocketServerHandshaker with HttpResponse / HttpRequest 2015-02-06 10:46:07 +01:00
transport Not execute shutdownOutput(...) and close(...) in the EventLoop if SO_LINGER is used. 2015-02-08 20:15:47 +01:00
transport-native-epoll Not execute shutdownOutput(...) and close(...) in the EventLoop if SO_LINGER is used. 2015-02-08 20:15:47 +01:00
transport-rxtx [maven-release-plugin] prepare for next development iteration 2014-08-16 03:27:42 +09:00
transport-sctp [maven-release-plugin] prepare for next development iteration 2014-08-16 03:27:42 +09:00
transport-udt Fix typo in param name 2015-01-16 20:30:35 +01:00
.fbprefs Updated Find Bugs configuration 2009-03-04 10:33:09 +00:00
.gitignore Add JVM crash logs to .gitignore 2014-05-18 21:36:54 +09:00
.travis.yml Travis CI branch whitelisting 2013-03-11 09:55:43 +09:00
CONTRIBUTING.md Move the pull request guide to the developer guide 2014-03-12 13:13:58 +09:00
LICENSE.txt Relicensed to Apache License v2 2009-08-28 07:15:49 +00:00
NOTICE.txt Implemented LZMA frame encoder 2014-09-15 15:05:36 +02:00
pom.xml Fix #3331 Update Javassist from 3.18.0-GA to 3.19.0-GA 2015-02-07 12:25:07 +09:00
README.md Add a link to the 'native transports' page 2014-07-21 12:54:24 -07:00
run-example.sh Add logLevel property to enable different log levels for the examples. 2014-11-21 10:48:57 +09:00

Netty Project

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.

How to build

For the detailed information about building and developing Netty, please visit the developer guide. This page only gives very basic information.

You require the following to build Netty:

Note that this is build-time requirement. JDK 5 (for 3.x) or 6 (for 4.0+) is enough to run your Netty-based application.

Branches to look

The 'master' branch is where the development of the latest major version lives on. The development of all other versions takes place in each branch whose name is identical to <majorVersion>.<minorVersion>. For example, the development of 3.9 and 4.0 resides in the branch '3.9' and the branch '4.0' respectively.