Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info
title언제사용할까

메모리 데이터는 왜 상태를 복구해야할까?

메모리 데이터에 영속성을 부여할수 있다고 해서 모든 메모리데이터를 영속성을 만드는것은 합리적이지 못합니다.

예를 들어 HTTP요청의 수신만으로 모든상태를 복구할수있다고 하면 , 실패할때 다시 요청하면 되기 때문입니다.

이것에 대한 대부분의 처리는 DB가 해왔을것입니다해왔기때문입니다.


그러면 액터의 상태복구가 필요할때는 언제인가?

액터는 메시지하나(요청/응답) 보다 더 오래존재하며, 시간이 지남에따라 다양한 가치있는 정보가 누적이됩니다.

또한 액터는 각각을 식별할수 있는 정체성이 있으며 해당 액터를 설계된 조건에의해 생성및 접근을 할수가 있습니다.

온라인 쇼핑몰 장바구니 액터를 예를 들어봅시다. 상품을 검색하고 장바구니에 상품을 빼고 넣고 , 해당 시스템이

의도된 업데이트이던지 장애에의해서이던지, 우리는 빈장바구니를 보여주고 싶지 않을것입니다. 그리고 그것은

사용자가 다른기기로 옮겨가게 될시도 장바구니는 유지될것입니다.

이것은 DB의 의존없이 액터의 상태를 영속화해야 할 필요성을 보여주는 부분적인 예일뿐입니다.

위와 같은 처리를, 우리의 메인 DB에 모든 사용자의 이벤트를 기록하여 복구하는 방법을 사용 해도됩니다.

그것이 전통적으로 익숙한 개발 방법이며, DB를 차츰 느리게 하는 방법이 였을것입니다.

...