이 포스팅은 nact.io 공식 홈페이지를 번역한 글입니다.
[NEW] 이제 공식 사이트에서도 한글 문서가 제공됩니다. https://nact.io/ko_kr  logo.svg

nact => node + actor
진정한 마이크로서비스가 되는 방법

Nact는 말하자면, 서버에서 실행되는 Redux라고 생각하시면 됩니다

오늘날의 애플리케이션 서버는 10년 전과 많이 다릅니다. 그런데 왜 우리는 여전히 90년대 스타일로 프로그래밍을 하고 있을까요?

Nact는 AkkaErlang에서 영감을 받았습니다.

Nact는 오픈소스 Node.js 프레임워크로서, 아래와 같은 것들을 여러분의 프로젝트에서 가능하게 해줍니다.

  • 효율적인 메모리 사용1
  • 탄력성(resilience), 내결함성 향상2
  • 성능 향상
  • 모듈간의 의존 결합 해소(디커플링)3

Nact는 간편한 이벤트 소싱 지원과 잘 설계된 액터 모델 구현을 제공함으로써 다양한 영역에서 활용할 수 있습니다.

Nact가 비록 만능은 아닙니다. 하지만 다양한 요구 사례들을 해결하기 위해 성장하고 있습니다.

여러분의 프로젝트에서도 사용해 볼 만한 부분이 있겠지요?

시작하기

Nact는 ReasonML과 JavaScript 라이브러리로 제공됩니다. 두 가지 모두 100% 테스트 커버리지와 완벽한 문서를 제공하고, 프로젝트 메인테이너의 지원 하에 관리되고 있습니다.

Nact 프레임워크의 전반적인 내용을 하루아침에 학습할 수 있습니다. 특히 Hello World 예제를 실습하는데는 15분도 안 걸립니다.

References


  1. 액터는 메모리를 많이 소비하지 않으며, 퍼시스턴스 액터를 사용할 때 유휴 액터는 상태를 저장하고 종료된다. 

  2. 액터는 비정상적 종료시 스스로 회복하는 기능과, 장애 전파를 중단하고 격리시키는 서킷 브레이커 기능을 가지고 있다. 

  3. 액터 간의 통신은 비동기 메시지로 이루어지며, 다른 모듈에 의존하지 않는다.