JUN 7 10

Useful tools for JBoss Netty

At ESN, we’re avid users of the Java networking library, JBoss Netty. It sports a really well-designed API for working with non-blocking I/O and great performance! Written by Trustin Lee of the Apache MINA fame.

Our real-time push server, Orbit, is written in Java and based on aforementioned library. Orbit is used both in our real-time Planet framework and in Beacon, our cloud hosted push service. For supporting the latest in HTML 5 development it naturally supports both Comet and Web Sockets as transport alternatives.

During the months of developing Orbit, a couple well-known standards and protocols was implemented. HTTP, Web Sockets and Thrift being the most used. However, after finishing and stabilizing these it felt a bit immoral to keep this closed source. Especially since we use a lot of open-source software ourselves.

Giving back

Most of what could be re-used was extracted out of our real-time push server and put up on GitHub. Licensed under the liberal MIT license and will hopefully come to good use.

Right now it features:

  • HTTP File Server
  • HTTP Cache
  • HTTP Router
  • Bandwidth meter
  • Asynchronous Web Socket client
  • Thrift processor

More details can be found in the netty-tools repository on GitHub.

Despite us trying to minimize the use of Java, we still use it for certain projects. The performance and tools available make it very hard to resist sometimes. However, we try limit the use of it to infrastructural projects with well defined responsibilities, such as back-end servers or IDE development.

Our goal of sharing and open-sourcing as much ESN technology as possible has started. Keep your eyes open for more!

by Carl Byström
  • http://genericwpthemes.com WP Themes

    Good dispatch and this post helped me alot in my college assignement. Thank you for your information.

  • James Todd

    I’d like to add HTTP(s) to the netty-tools Thrift pipeline and could use a pointer.

    Thx,

    - james

  • accesine

    Great Share!

blog comments powered by Disqus