아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
레딧 favicon레딧

내구성 함수(Durable Function)의 3가지 형태: Stateless, Session, Actor

by DD
2026-05-01
2개월 전
조회수 6

내구성 함수(Durable Function)는 시스템 장애에도 실행 상태를 보존하며 재시작 가능한 함수를 의미함

Stateless Function, Session, Actor의 세 가지 형태로 분류하여 각 특징과 사용 사례를 제시함

Temporal, Restate, DBOS, Resonate 등 다양한 DE 프레임워크를 이 모델에 매핑하여 비교 분석함

Stateless Function: 일회성 작업

Stateless Function은 단일 실행(One-shot)을 위한 내구성 함수 형태로, 시작과 끝이 명확하며 외부 상호 작용이 없다. 결제 처리(Payment Processing)와 같이, 입력 데이터를 받아 처리하고 결과를 반환하는 데 사용된다. 실행 중 오류 발생 시, DEE(Durable Execution Engine)는 메모이제이션(Memoization)된 결과를 활용하여 처음부터 다시 실행한다. Stateless Function은 공개적으로 접근 가능하지 않으며(Publicly addressable), 실행 ID가 필요하지 않다.

Session: 대화형 워크플로우

Session은 실행 ID(Execution ID)를 가지며, 여러 단계의 상호 작용을 지원하는 내구성 함수 형태이다. 대출 신청 워크플로우(Loan Application Workflow)와 같이, 여러 단계의 프로세스를 관리하고 외부의 요청에 따라 상태를 변경할 수 있다. Session은 실행 중인 인스턴스에 대한 접근(Access to the running instance)을 허용하며, 외부 시스템과의 통신을 위해 또는 을 사용한다. Session의 수명은 프로세스 실행 기간으로 제한된다.

메시지 전달(Message Passing)
보조 함수 호출(Secondary function calls)

Actor: 지속적인 상태 관리

Actor는 영구적인 ID(Persistent Identity)를 가지며, 장기간 상태를 유지하는 내구성 함수 형태이다. 쇼핑 카트(Shopping Cart)와 같이, 여러 세션에 걸쳐 상태를 보존하고, 외부의 요청에 따라 상태를 변경한다. Actor는 여러 함수(Functions)를 제공하며, 각 함수는 상태 변경(State Mutation) 또는 부수 효과(Side Effects)를 수행한다. Actor는 명시적으로 삭제될 때까지 존재하며, 동시성(Concurrency)은 각 함수가 순차적으로 실행되는 방식으로 관리된다.

DE 프레임워크 매핑

게시물은 Temporal, Restate, DBOS, Resonate와 같은 DE 프레임워크를 앞서 설명한 세 가지 형태에 매핑하여 각 프레임워크의 특징을 분석한다. Temporal은 Session 형태의 워크플로우를 지원하며, 신호(Signals)와 업데이트(Updates)를 통해 외부 상호 작용을 처리한다. Restate는 Stateless Function, Session, Actor에 해당하는 다양한 서비스 유형과 핸들러를 제공한다. DBOS는 Session 기반의 워크플로우를 중심으로 하며, 메시지 전송(Send/Recv messaging) 및 이벤트 발행(Event publishing)을 통해 외부 상호 작용을 지원한다. Resonate는 Durable Promise를 기반으로 Stateless Function을 중심으로 하며, Session의 의미를 지원한다.

The Three Durable Function Forms
고급
아키텍처
Temporal
Restate
DBOS
Resonate
Backend
원문 읽기
원문 읽기

관련 추천 글

FE News 4월 소식: Temporal, TypeScript 6.0, Node.js 27, Expo UI 등

네이버 D2 로고

무신사, Temporal 도입으로 "스케줄 멈춤" 문제 해결!

무신사 로고

AI 개발, LLM을 넘어선 아키텍처로 진화 중

데브투 로고

오픈소스 임베디드 배지로 나만의 경험을 만들어보세요!

데브투 로고

SQLite, AI 에이전트 워크플로우에 적합할까?

해커뉴스 로고

해스켈(Haskell)로 200만 라인 코드, 핀테크 기업 머큐리의 생존 전략

레딧 로고
레딧 favicon레딧
고급
아키텍처
Temporal
Restate
DBOS
Resonate
Backend

관련 추천 글

FE News 4월 소식: Temporal, TypeScript 6.0, Node.js 27, Expo UI 등

네이버 D2 로고

무신사, Temporal 도입으로 "스케줄 멈춤" 문제 해결!

무신사 로고

AI 개발, LLM을 넘어선 아키텍처로 진화 중

데브투 로고

댓글 0

첫 번째 댓글을 남겨보세요!