마이크로서비스 개발을 위한 오픈소스 JVM 기반 프레임워크인 마이크로넛(Micronaut)은 런타임 오버헤드, 메모리 사용을 줄여줄 수 있다.
마이크로넛의 기능
마이크로넛은 마이크로서비스 환경에서 클라이언트 및 서버 프레임워크로 작동한다. 핵심은 애플리케이션을 실행하는 데 필요한 메타 데이터와 정보를 사전 컴파일하는 주석 프로세서(annotation processors)의 사용이다. 이를 통해 메모리 소비 및 시작 시간에 대한 런타임 오버 헤드가 줄어들 수 있다.
이 프레임워크는 또 유닛 테스트와 리플렉션 및 프록시 사용의 최소화를 지원한다.
개발자가 애플리케이션을 작성할 때 어떤 JVM 언어든 사용할 수 있다. 그러나 주석 프로세싱을 이용하기 위해서는 자바, 코틀린, 또는 그루비를 이용해야 했다. 마이크로넛은 기존 그레일 애플리케이션에서 비롯된 기능을 지원하는 등 그레일(Grails)에서 착안한 양상을 보인다.
마이크놋의 다른 기능으로는 다음과 같은 것들이 있다.
- 종속성 주입 및 제어 반전
- 기본값 및 자동 구성
- 서비스 발견
- Netty 네트워크 애플리케이션 프레임워크에 구축된 HTTP 클라이언트 및 서버
- 클라이언트 측 로드 밸런싱
- AWS 람다 서버리스 컴퓨팅 플랫폼에의 기능 및 애플리케이션 배포 지원
마이크로넛 개발진은 향후 다음과 같은 기능을 추가할 계획이다.
- 메시지 기반 마이크로 서비스 지원
- 스트리밍 애플리케이션
- 웹소켓 지원
마이크넛은
깃허브 저장소에서 다운로드할 수 있다. 오브젝트 컴퓨팅에서 비롯된 이 오픈소스 프레임워크는 다음 주 베타 배포 단계에 진입한다. 1.0 생산 버전은 올해 연말께 등장할 예정이다.ciokr@idg.co.kr