Apache MINA
![]() | |
Developer(s) | Apache Software Foundation |
---|---|
Stable release |
2.0.13
/ February 16, 2016 |
Written in | Java |
Operating system | Cross-platform |
Type | Enterprise Integration Patterns Message Oriented Middleware |
License | Apache License 2.0 |
Website |
mina |
Apache MINA (Multipurpose Infrastructure for Network Applications)[1] 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.
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.[2]
Advantages
- Unified APIs for various transports (TCP/UDP etc.)[3]
- 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
See also
- Apache Camel
- Enterprise messaging system
- Message-oriented middleware
- Service-oriented architecture
- Event-driven SOA
References
- ↑ https://mina.apache.org/mina-project/faq.html#what-does-mina-mean
- ↑ "Apache MINA - FAQ". Archived from the original on 25 July 2011. Retrieved 2016-03-08.
- ↑ "Apache MINA features". Retrieved 2016-03-08.