It provides an abstract event-driven asynchronous API over various transports such as UDP/IP and TCP/IP via the Java NIO.
Apache MINA is often called: NIO framework · library, client - server framework - library or a networking - socket library.
Here are some key features of "Apache MINA":
· Unified API for various transport types: TCP/IP & UDP/IP via Java NIO, Serial communication (RS232) via RXTX, In-VM pipe communication.
· Filter interface as an extension point; similar to Servlet filters.
· Low-level and high-level API: Low-level - uses ByteBuffers, High-level - uses user-defined message objects and codecs
· Highly customizable thread model: Single thread, One thread pool, More than one thread pools (i.e. SEDA).
· Out-of-the-box SSL · TLS · StartTLS support using Java 5 SSLEngine
· Overload shielding & traffic throttling
· Unit testability using mock objects
· JMX managability
· Stream-based I/O support via StreamIoHandler
· Integration with well known containers such as PicoContainer and Spring
· Smooth migration from Netty, an ancestor of Apache MINA.
What's New in This Release: [ read full changelog ]
· SslFilter should start initiating handshake from sesionCreated() rather than from onPostAdd()
· Entry and Exit action support for Mina state machine
· Needs meaningful error message when AbstractIoSession.write called with null
· DIRMINA-888 - Add the ability to get the write queue size like: session.getWriterRequestQueue().size();