What is Apache MINA?

Apache MINA (Multipurpose Infrastructure for Network Application) is an open source java network application framework. MINA is can be used to create Scalable, high performance Network applications. MINA provides unified API's for various transports like TCP, UDP, Serial communication, In-VM pipe. It also makes it easy to make an implementation of custom transport type. MINA provides both high-level and low-level network API's.

Application Structure

 

MINA based Application Architecture

MINA based Application Architecture

From the figure above, User application interacts with MINA API's, shielding the User application from Low level IO details. MINA internally uses IO API's to perform the actual IO functions. This makes it easy for the Users to concentrate on Application logic and leave the IO handling to Apache MINA.

Advantages (From the Apache MINA Home page)

  • Unified API's for various transports (TCP/UDP etc)
  • Provides high/low level API's
  • Customizable Thread Model
  • Easy Unit Testing using MockObjects
  • Integration with DI frameworks like Spring, Google Guice, picocontainer
  • JMX Manageability

Reference

Apache MINA

- Home Page of Apache MINA

2 thoughts on “What is Apache MINA?

  1. my project that integrating MINA application with Spring,like this
    http://mina.apache.org/mina-project/userguide/ch17-spring-integration/ch17-spring-integration.html
    running on windows is ok,but deploy on linux(centos) is something wrong!
    log like this:
    ” Invoking init method ‘bind’ on bean with name ‘ServerSocketAcceptor'”

    spring shutdown,then spring Invoking init method ‘bind’ ,not any error log output.
    notes:
    running project alone is ok on linux,2 or more project that integrating MINA application with Spring bind different port is not working!
    so,please help me!is a bug?
    waiting you message.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">