Transmogrifier: Java NIO and Non-Blocking IO

Mini-Course on how non-blocking network communication is done in Java. Level: difficult

Java.NIO has been with us since Java 1.4. Yep, that's over 15 years ago! And you still don't know how it works?

No worries, we're here to help :-)

In this mini-course, we start by learning how the "old" Java.IO works by writing three different servers.

We then move over to Java.NIO, which stands for "New IO", not as most people think "Non-blocking IO". Our first example uses a blocking Java.NIO server, to show this.

We then write a polling non-blocking Java.NIO server, which consumes a lot of CPU, but is able to support more sockets than the blocking varieties.

Finally, we write two slightly different non-blocking servers using the Selector to react to events that might happen on our sockets.

This mini-course is designed for you to code along. By the end, you should have a working understanding of how to communicate over sockets in a blocking and non-blocking fashion.


Your Instructor


Dr Heinz M. Kabutz
Dr Heinz M. Kabutz

Heinz Kabutz is the author of The Java Specialists’ Newsletter, a publication enjoyed by tens of thousands of Java experts in over 150 countries. He has been a Java Champion since 2005.


Course Curriculum


  1. Welcome
Available in days
days after you enroll

Frequently Asked Questions


How long do I have access to a fully paid course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own. Furthermore, if we move to another platform, we will offer you a free transfer of your account for all the courses that you have purchased.
Can I pay via PayPal?
Yes, you can for outright purchases, but not for recurring payments such as paying by installments.
Can I get back the EU VAT?
Absolutely. First off, be sure to enter the VAT number in the appropriate field during the payment process. Then contact Teachable and ask them to reimburse you the VAT.
May I share my login details with my colleagues?
Unfortunately not. The terms of usage are for a single license. Teachable tracks your progress through the curriculum, so you won't know how much you have watched. We offer discounts on bulk licenses by one company. Please contact us for bulk licensing.
May we use the course for running in-house courses?
You may, as long as each of the students in the class has a valid license for that course. For example, some companies run lunch time Design Patterns study groups using our material. This is an effective way to learn. Please contact us for bulk licensing.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 14 days to tell us what you are unhappy about, and we will give you a full refund and deregister you from the course.
When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish. We do recommend putting time aside and setting goals to complete the course.
Can I watch the course offline during my commute?
Teachable have an iOS app that lets you watch offline. Android is not supported unfortunately.

Get started now!