Preface

Looking back, I still can’t believe that I did it.

When I started to contribute to Netty in late 2011, I would never have imagined that I’d be writing a book about Netty and be one of the core developers of the Framework itself.

It all started when I got involved in 2009 with the Apache James project, a Java-based mail server developed under the Apache Software Foundation.

Apache James, like many applications, required a solid networking abstraction to build upon. While investigating the field of projects that provide networking abstractions, I stumbled upon Netty and immediately fell in love with it. As I became more familiar with Netty from a user’s perspective, I started to turn my gaze on improvements and giving back to the community.

Despite my first contributions being of limited scope, it became obvious very quickly how beneficial making contributions and the related discussions with the community, especially with Trustin Lee, the founder of the project, were to my personal growth. This experience grabbed hold of me, and I enjoyed spending my free time becoming more engaged in the community. I found myself helping on mailing lists and joining discussions on the IRC channel. Working on Netty began as a hobby but it quickly evolved into a passion.

My passion for Netty eventually led to my employment at Red Hat. This was a dream come true, as Red Hat paid me to work on the project I had come to love. I eventually came to know Claus Ibsen who was working on Apache Camel at the time (and still does). Claus and I came to the realization that Netty had a solid user base and good JavaDocs, but it lacked a higher level of documentation. Claus is the author of Camel in Action (Manning Publications, 2010), and he turned me on to the idea of writing a similar book for Netty. I thought about the idea for a few weeks, and eventually I was sold. This is how Netty in Action got off the ground.

While writing Netty in Action, my involvement in the community continued to grow. I eventually became the second most active contributor (after Trustin Lee) with over 1,000 commits. I found myself speaking about Netty at conferences and technical meetups around the world. Eventually Netty opened another employment opportunity at Apple Inc. where I am currently employed as a Senior Software Engineer on the Cloud Infrastructure Engineering Team. I continue to work on Netty and make regular contributions back to the community, while helping to drive the project.

NORMAN MAURER

CLOUD INFRASTRUCTURE ENGINEERING, APPLE

My work as a Dell Services consultant at Harvard Pilgrim Health Care in Wellesley, MA, has focused primarily on creating reusable infrastructure components. Our goal is to expand the common code base in a way that not only benefits the software process in general, but also relieves application developers of responsibility for plumbing code that can be both pesky and mundane.

At one point it came to my attention that two related projects were working with a third-party claims-processing system that supported only direct TCP/IP communications. One of the projects needed to reimplement in Java a somewhat under-documented legacy COBOL module built on the vendor’s proprietary delimited format. This module was ultimately replaced by the other project, which would use a more recent XML-based interface to the same claims system (but still using straight sockets, no SOAP!).

This seemed to me an ideal opportunity to develop a common API, and an interesting one at that. I knew there would be stringent throughput and availability requirements and also that the design was still evolving. Clearly, the underlying networking code had to be completely decoupled from the business logic in order to support rapid cycles of iteration.

My research into high-performance networking frameworks for Java led me straight to Netty. (The hypothetical project you’ll read about at the start of chapter 1 is pretty much taken from real life.) I soon became convinced that Netty’s approach, using dynamically configurable encoders and decoders, was a perfect fit for our needs: both projects would employ the same API, deployed with the handlers needed for the specific data format in use. I became even more convinced when I discovered that the vendor’s product was also based on Netty!

Just at that time I learned that the book Netty in Action I had been hoping for was actually in the works. I read the early drafts and soon contacted Norman with questions and a few suggestions. In the course of our conversations, we spoke often about the need to keep the end user’s point of view in mind, and since I was currently involved in a live Netty project, I was happy to take on this role.

I hope that with this approach we’ve succeeded in meeting the needs of developers. If you have any suggestions on how we can make this book more useful, please contact us at https://forums.manning.com/forums/netty-in-action.

MARVIN ALLEN WOLFTHAL

DELL SERVICES

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset