News: Apache MINA 1.1.0 Released, with Java5 features
The Apache MINA project team is pleased to announce the release of the Apache MINA version 1.1.0. Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. The 1.1.0 release is a Java 5 port of Apache MINA 1.0.x, which employs the new language features in Java 5 (i.e. generics and covariant return type). Existing applications based on MINA 1.0.x can be ported to MINA 1.1.0 with very little effort. Distributions are available from the download page here: * http://mina.apache.org/downloads.html More information on Apache MINA can be found at the Apache MINA project site: * http://mina.apache.org/ For those who are interested in Java network application performance: * http://mina.apache.org/performance-test-reports.html
- Posted by: Trustin Heuiseung Lee
- Posted on: April 16 2007 08:21 EDT
- This is great! by Jon Stevens on April 17 2007 02:41 EDT
- Re: Apache MINA 1.1.0 Released, with Java5 features by Wille Faler on April 17 2007 17:56 EDT
- Re: Apache MINA 1.1.0 Released, with Java5 features by Michael Newcomb on April 17 2007 20:42 EDT
- Re: Apache MINA 1.1.0 Released, with Java5 features by Trustin Heuiseung Lee on April 17 2007 20:47 EDT
- Re: Apache MINA 1.1.0 Released, with Java5 features by rory Winston on April 18 2007 05:16 EDT
I'm glad to see the 1.1.x release. It's been needed for a long time now. I really wish you would spend some time on documentation in the wiki. More examples. Best practices. Etc. It isn't fun having to troll the website archives for this stuff. thanks again for your hard work. jon
I'm glad to see the 1.1.x release. It's been needed for a long time now.
I really wish you would spend some time on documentation in the wiki. More examples. Best practices. Etc./blockquote> Thanks for volunteering Jon :) James Iona Open Source the Enterprise Way
MINA does sound interesting, however I can't quite work out what it does and what it uses from just looking at the website.. Does it use NIO under the covers, and provide some sort of "convenience" API on top of that? Is it decoupled from the old, flawed "one request, one thread" paradigm? To me these two things would be really useful: having something a bit more convenient on top of NIO (NIO is great, but a pain to use), and being able to create my own event and threading model around that (queueing network events in in-memory queues etc). / Wille Blog: Buzzword Bingo
MINA is an asynchronous IO api. It does 'wrap' Java NIO but it is much, much more. MINA provides the "event and threading model" so you wouldn't exactly get to provide your own, but who wants to do that anyway? Take my advice, just download and run some examples.
Does it use NIO under the covers, and provide some sort of "convenience" API on top of that?Yes for socket and datagram implementation, and no for other transport types. MINA provides an abstract API, so it doesn't necessarilly mean it relies on NIO. You can implement MINA with BIO or other communication libraries such as JGroup or RXTX.
Is it decoupled from the old, flawed "one request, one thread" paradigm?Yes. You can use whatever thread model once you learn how MINA works. MINA doesn't force you certain thread model, so it's entirely up to you. Probably the presentation materials might help you understand MINA: http://mina.apache.org/documentation.html#Documentation-PresentationMaterials
We're using MINA for a project at the moment, and it's very nice. It would be nice if there was a blocking implementation included as well as NIO, but the model is very elegant.