Go to file
Trustin Lee 120ffaf880 Use separate query ID space for different DNS servers
Related: #3972

Motivation:

DnsNameResolver limits the number of concurrent in-progress DNS queries
to 65536 regardless the number of DNS servers it communicates with. When
the number of available DNS servers are more than just one, we end up
using much less (65536 / numDnsServers) query IDs per DNS server, which
is non-optimal.

Modifications:

- Replace the query ID and context management with
  DnsQueryContextManager
  - Eash DNS server gets its own query ID space

Result:

Much bigger query ID space, and thus there's less chance of getting the
'query ID space exhaustion' error
2015-11-09 15:25:13 -08:00
all [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
buffer Export defaults from PooledByteBufAcclocator static fields 2015-11-08 08:08:23 +01:00
codec Improve the performance of copying header sets when hashing and name validation are equivalent. 2015-11-07 08:53:10 -08:00
codec-dns [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
codec-haproxy [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
codec-http Improve the performance of copying header sets when hashing and name validation are equivalent. 2015-11-07 08:53:10 -08:00
codec-http2 DefaultHttp2HeadersTest updates 2015-11-07 10:14:00 -08:00
codec-memcache [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
codec-mqtt [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
codec-socks [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
codec-stomp HTTP/2 Headers Type Updates 2015-10-30 15:29:44 -07:00
codec-xml [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
common configurable service thread name prefix 2015-11-05 08:51:12 +01:00
example HTTP/2 Client Example TLS Pipeline Initialization 2015-11-07 10:15:20 -08:00
handler ApplicationProtocolNegotiationHandler failure behavior 2015-11-07 09:33:08 -08:00
handler-proxy [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
license Let PoolThreadCache work even if allocation and deallocation Thread are different 2015-05-27 14:38:11 +02:00
microbench Improve the performance of copying header sets when hashing and name validation are equivalent. 2015-11-07 08:53:10 -08:00
resolver [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
resolver-dns Use separate query ID space for different DNS servers 2015-11-09 15:25:13 -08:00
tarball [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
testsuite [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
testsuite-osgi [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
transport Improved DefaultChannelPipeline#destroy() to avoid spinning continuously in case of custom executors. 2015-11-06 19:37:53 +01:00
transport-native-epoll EPOLL Shutdown and Half Closed 2015-11-02 13:01:24 -08:00
transport-rxtx [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02:00
transport-sctp [#4327] Ensure toString() will not throw IllegalReferenceCountException 2015-10-10 20:12:43 +02:00
transport-udt [maven-release-plugin] prepare for next development iteration 2015-10-02 09:03:29 +02: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 Let PoolThreadCache work even if allocation and deallocation Thread are different 2015-05-27 14:38:11 +02:00
pom.xml Update ALPN boot version 2015-11-07 09:37:56 -08:00
README.md Fix the 'branches to look' section 2015-10-27 13:59:11 +01:00
run-example.sh Add HTTP/2 Netty tiles example 2015-05-18 14:16:54 -07: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.