| <?xml version="1.0" encoding="UTF-8"?> |
| <document> |
| <properties> |
| <author email="trustin@apache.org">Trustin Lee</author> |
| <title>Features</title> |
| </properties> |
| |
| <body> |
| <section name="Features"> |
| <p> |
| MINA is a simple yet full-featured network application framework |
| which provides: |
| <ul> |
| <li>Unified API for various transport types: |
| <ul> |
| <li>TCP/IP</li> |
| <li>UDP/IP</li> |
| <li>In-VM pipe communication</li> |
| <li>You can implement your own!</li> |
| </ul></li> |
| <li>Low-level and high-level API: |
| <ul> |
| <li>Low-level: uses ByteBuffers</li> |
| <li>High-level: uses user-defined message objects and codecs</li> |
| </ul></li> |
| <li>Stream-based I/O support via <code>StreamIoHandler</code></li> |
| <li>Filter interface as an extension point; similar to <a href="http://java.sun.com/products/servlet/Filters.html">Servlet filters</a> |
| <ul> |
| <li>SSL support via <code>SSLFilter</code> thanks to Java 5 <code>SSLEngine</code></li> |
| <li>Thread pools are implemented as filters so that users can customize thread model.</li> |
| </ul></li> |
| <li>Unit testability using <a href="http://www.mockobjects.com/">mock objects</a>,</li> |
| <li>JMX managability, (coming soon)</li> |
| <li>Traffic throttling, (coming soon)</li> |
| <li>Overload shielding, (coming soon)</li> |
| <li>Integration with well known containers such as Spring |
| and OSGi, (coming soon)</li> |
| <li>Smooth migration from Netty, a popular NIO framework. |
| (See <a href="http://gleamynode.net/dev/tl-netty2-example-sumup/docs/">Netty Tutorial</a>)</li> |
| </ul> |
| </p> |
| </section> |
| </body> |
| </document> |