Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java programs using NIO framework [closed]

Tags:

java

nio

I am doing some research related to Java NIO. I need to find some representative applications that are based on this framework. Please feel free to suggest! The more, the merrier!

Thanks

like image 696
peng Avatar asked Apr 19 '10 23:04

peng


People also ask

What is the use of NIO in Java?

Provides for system input and output through data streams, serialization and the file system. Provides classes that are fundamental to the design of the Java programming language. Defines buffers, which are containers for data, and provides an overview of the other NIO packages.

Does Netty use NIO?

Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

What is NIO package in Java?

Java NIO is a buffer oriented package. It means that the data can be written/read to/from a buffer which further processed using a channel. Here, the buffers act as a container for the data as it holds the primitive data types and provides an overview of the other NIO packages.

Why is NIO faster?

nio libraries allow for non-blocking communication using Buffers and Channels and can provide direct memory access for faster performance.


2 Answers

The Apache MINA Networking framework is built on NIO (and is used by many applications to provide high-performance networking).

Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract · event-driven · asynchronous API over various transports such as TCP/IP and UDP/IP via Java NIO.

Apache MINA is often called:

  • NIO framework · library,
  • client · server framework · library, or
  • a networking · socket library.

However, it's much more than that. Please take a look around the list of the features that enable rapid network application development, and what people says about MINA. Please grab yourself a download, try our Quick Start Guide, surf our FAQ or start join us on our community

I believe JETTY uses continuations to support 5000+ HTTP Comet connections using Servlet 3.0 continuations.

Also you can look at a BlazeDS NIO implementation (basically an opensource LCDS). http://blogs.webtide.com/athena/entry/asynchronous_blazeds_polling_with_jetty

like image 139
Dougnukem Avatar answered Nov 04 '22 05:11

Dougnukem


Netty:

Netty is a NIO client server framework which enables quick and easy development of network applications such as protocol servers and clients. It greatly simplifies and streamlines network programming such as TCP and UDP socket server.

like image 36
Alfred Avatar answered Nov 04 '22 05:11

Alfred