Netty 3.2.0.ALPHA3 release: Web Sockets and higher performance

"Trustin Lee (이희승)" trustin at gmail.com
Mon Jan 11 07:09:57 EST 2010


Hi community,

Netty 3.2.0.ALPHA3, the third milestone in the 3.2 branch, has been
released.

The Netty project is an effort to provide an asynchronous, event-driven
network application framework and tools for rapid development of
maintainable, high-performance, high-scalability protocol servers and
clients.

In other words, Netty is an NIO client server framework that enables
quick and easy development of network applications such as protocol
servers and clients. It simplifies and streamlines network programming
such as TCP and UDP socket servers

Please visit our web site to download it.  Your feed back is more than
appreciated - please visit the discussion forum and leave some comments
and questions:

  * http://www.jboss.org/netty/

Highlights
==========

  * Web Sockets protocol support
  * Improved TCP NIO socket write performance for many small writes
  * New data structure for efficient HTTP header manipulation
  * Internal queue implementation overhaul for improved performance

Most notable new feature in this release is the support for Web Sockets.
 Netty now includes the complete codec for encoding and decoding Web
Socket data frames and the example that demonstrates how to upgrade an
existing HTTP connection to a Web Socket connection.  Take a look into
the example:

  * http://is.gd/63PfN

Although not visible from the feature list, fair amount of performance
improvement has been made, especially in the internal data structures
and the NIO socket transport.  Please let us know if you see performance
improvement, degradation, or any related regression.

Changes in the Buffer API
=========================
[NETTY-268] All method signatures that accept a String as character set
parameter have changed to accept a java.nio.charset.Charset.  Old
methods have been deprecated.

[NETTY-269] You can create a ChannelBuffer from other string types such
as char[], CharSequence, and CharBuffer now.

Changes in the Core API
=======================
[NETTY-271] Channels.pipeline(ChannelHandler...) has been added for more
convenient pipeline creation for most simple applications.

[NETTY-267] The iteration order of the Iterator returned by
ChannelGroupFuture.iterator() was not correct in the previous releases.

Changes in the HTTP codec
=========================
[NETTY-264] Web Socket support has been added - take a look into the
'WebSocket' example in the web site: http://is.gd/63PfN

[NETTY-272] Fixed a bug where HttpMessageEncoder does not encode
HttpChunk incorrectly if the message version is HTTP/1.0.

[NETTY-273] The internal data structure for storing HTTP header has been
written from scratch - the headers are not sorted by alphabetically
anymore for more freedom in constructing an HTTP message.

[NETTY-274] HttpMessage.getHeaders() method has been added so that a
user can iterate all headers easily.  Check out the updated HTTP snoop
server example: http://is.gd/63SYj

Changes in the transport implementations
========================================
[NETTY-265] Fixed a bug where NIO datagram transport closes the channel
on write failure.

[NETTY-270] Fixed a bug where DatagramChannelConfig ignores the
"receiveBufferSizePredictorFactory" option.

[NETTY-275] Improved NIO socket write performance by reducing
unnecessary calls on java.nio.channels.SocketChannel.

Other notable changes
=====================
[NETTY-266] The internal concurrent queue implementation
(LinkedTransferQueue) has been backported again from the upstream (Doug
Lea's jsr166y repository).  The performance should be improved in
overall, but we need more testing and feed back from you.

Upcoming Releases
=================
We have bunch of new features planned, and they are all public in our
issue tracker and mailing list.  Please feel free to join the discussion
and keep us updated with any ideas for new features, bugs,
design issues, API usability feed back, and questions - your idea is the
future of Netty!

Miscellaneous
=============
For the full changelog, please visit the issue tracker:

  * http://jira.jboss.org/jira/browse/NETTY

Cheers,
Trustin

-- 
what we call human nature in actuality is human habit
http://gleamynode.net/


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
Url : http://lists.jboss.org/pipermail/netty-users/attachments/20100111/1e3f2838/attachment.bin 


More information about the netty-users mailing list