Harman Patil (Editor)

Apache MINA

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Written in
  
Java

License
  
Apache License 2.0

Operating system
  
Cross-platform

Apache MINA

Developer(s)
  
Apache Software Foundation

Stable release
  
2.0.16 / October 31, 2016 (2016-10-31)

Type
  
Enterprise Integration Patterns Message Oriented Middleware

Apache MINA (Multipurpose Infrastructure for Network Applications) is an open source Java network application framework. MINA can be used to create scalable, high performance network applications. MINA provides unified APIs for various transports like TCP, UDP, serial communication. It also makes it easy to make an implementation of custom transport type. MINA provides both high-level and low-level network APIs.

Contents

A user application interacts with MINA APIs, shielding the user application from low level I/O details. MINA internally uses I/O APIs to perform the actual I/O functions. This makes it easy for the users to concentrate on the application logic and leave the I/O handling to Apache MINA.

Advantages

  • Unified APIs for various transports (TCP/UDP etc.)
  • Provides high/low level APIs
  • Customizable Thread Model
  • Easy Unit Testing using Mock Objects
  • Integration with DI frameworks like Spring, Google Guice, picocontainer
  • JMX Manageability
  • Tooling

    Graphical tools such as Eclipse IDE, IntelliJ IDEA can be used.

    Alternatives

  • Grizzly
  • Netty 4
  • QuickServer
  • xSocket
  • References

    Apache MINA Wikipedia