티스토리 뷰
반응형
반도체 통신 서버를 유지보수를 하게 되면서 MINA 프레임 워크에 대해 알게 되었습니다.
Apache Mina는 네트워크 어플리케이션 프레임워크로 Java NIO를 기초로 TCP/IP & UDP/IP 같은 전송을 통해서 이벤트 중심 비동기 api를 제공하며, 사용자가 쉽게 네트워크 서버를 구현할 수 있게 도와주는 프레임 워크 입니다.
NIO는 Non-Blocking IO 의 줄임말이라고 합니다. NIO에 대해 좋은 글을 한번 찾아봤습니다.
일단 Mina의 특징에 대해 알아보겠습니다.
- 다양한 전송 타입을 위한 통합 API:
- Java NIO를 통한 TCP/IP & UDP/IP
- RXTX를 통한 Serial communication (RS232)
- In-VM pipe communication
- 사용자가 직접 구현
- extension point로의 Filter interface; Servlet filters 와 비슷
- Low-level and high-level API:
- Low-level: uses ByteBuffers
- High-level: 사용자 정의 메세지 객체와 코덱 사용
- Highly customizable thread model:
- Single thread
- One thread pool
- More than one thread pools (i.e. SEDA)
- Java 5 SSLEngine를 사용한 즉시 사용할 수 있는 SSL · TLS · StartTLS 지원
- Overload shielding & traffic throttling
- Unit testability using mock objects
- JMX managability
- Stream-based I/O support via StreamIoHandler
- PicoContainer and Spring 같은 컨테이너와의 통합
- MINA 이후 출시한 NETTY의 원할한 마이그레이션 지원
Mina를 통해 만들어진 어플리케이션은 다음과 같은 기본 구조를 가집니다.
출처 : https://mina.apache.org/mina-project/userguide/ch2-basics/application-architecture.html
Mina는 3개의 레이어로 구성되어 있습니다.
I/O Service - 실제 I/O 수행
I/O Filter Chain - 원하는 데이터 구조 및 그 반대의 데이터를 필터링/변환
I/O Handler - 비즈니스 로직 구현
출처 : https://mina.apache.org/mina-project/userguide/ch2-basics/application-architecture.html
다음은 MINA를 사용한 Server와 Client 구조입니다.
대부분의 구현이 MINA 예제를 기초로 만들 수 있어서
여기에 올리는 것보다 이 URL을 타고 참고하시면 더 좋을 것 같습니다.
Apache Mina :
참고 :
반응형
'BackEnd > Java' 카테고리의 다른 글
JAVA 디자인 패턴 강좌 (0) | 2018.11.06 |
---|---|
JAVA Singleton Pattert 싱글톤 패턴 (0) | 2018.10.31 |
Thread pool(쓰레드 풀) (0) | 2018.10.22 |
Java Socket 통신 (0) | 2018.10.08 |
cmd에서 java 실행 (0) | 2018.10.01 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- jQuery
- 파이썬3
- React-router
- Router
- data table component
- python3
- JPA
- 파이썬
- Java
- Spring Boot
- Redux
- Python
- MySQL
- data component
- JSON
- data gird component
- data component module
- Spring
- https://www.tistory.com/auth/logout/
- react
- CSS
- mobx
- localStorage
- angular router
- 페이스북 로그인
- data grid component
- Angular
- JavaScript
- facebook login
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함