**리액티브 스트림(Reactive Streams)**은 비동기 데이터 처리와 흐름 제어(Backpressure)를 표준화한 자바 진영의 명세로, Netflix, Lightbend, Pivotal 등 주요 기업들이 참여해 2015년에 정식 발표되었습니다. Java 9부터는 Flow API로 포함되어 공식적인 JVM 표준이 되었으며, Spring WebFlux, Akka Streams, Project Reactor, RxJava 등 다양한 프레임워크들이 이를 기반으로 비동기 스트림 처리의 신뢰성과 일관성을 제공하고 있습니다. 특히 고속 데이터 전송, 스트리밍 분석, 웹소켓 기반 실시간 서비스에 핵심적인 기술로 자리 잡았습니다.
**액터모델(Actor Model)**은 상태를 메시지를 통해만 변경할 수 있는 독립적인 액터 단위로 분산 시스템을 구성하는 개념으로, 동시성 문제를 안전하게 해결하면서 수평 확장이 용이하다는 장점이 있습니다. Erlang/OTP, Akka(Lightbend), Microsoft Orleans 등의 구현체를 통해 WhatsApp, LinkedIn, Tesla, Microsoft 같은 글로벌 기업들이 실시간 통신, IoT, 게임, AI 에이전트 등에 성공적으로 활용하고 있으며, 이벤트 기반 구조와 궁합이 좋아 복잡한 비즈니스 로직이나 AI 파이프라인의 오케스트레이션에도 탁월한 구조를 제공합니다.

액터모델을 알지못해도 액터모델을 이용하는 다양한 샘플기능을 바이브로도 만들수있지만 바이브를 통해 액터구현을 다양하게 시도할수 있음으로 학습곡선에따른 시간을 단축하는것과 동시에 액터시스템이 지원하는 클러스터 포함 상태프로그래밍/분산처리 설계능력을 로컬로 수행함으로 고오급 설계 능력을 배양하는데 목적이있습니다.
AgenticCoding/Projects는 여기서 구성된 프롬프트에의해 생성된 프로젝트로 참고할수 있으며 프롬프트를 참고해 다양한 지침을 생성한후 다양한 액터시스템을 구현에 도전할수 있습니다. 샘플코드의 생성순서는 난이도에 따른 학습순서와 무관하게 작성되고 있으나~ CRUD가 일반적으로 잘하지 못하는 영역의 구현을 시도하고 있습니다.
현재 상위 경로에서 수행 - 난이도별 학습 경로
| 순번 | 프롬프트 | 난이도 | 핵심 학습 목표 |
|---|---|---|---|
| 00 | SSE-PUSH 시스템 | ⭐⭐ | Spring WebFlux + Actor 기본 패턴 |
| 01 | 액터 동시성 처리 | ⭐ | Tell/Ask 패턴과 동시성 모델 비교 |
| 02 | LLM 토큰 제어 | ⭐⭐⭐ | 백프레셔와 Pekko Streams 활용 |
| 03 | 액터 라우터 | ⭐⭐ | 6가지 라우팅 전략과 확장성 |
| 04 | 액터 스트림 | ⭐⭐⭐ | 다양한 스트림 처리 기술 비교 |
| 05 | 액터 스로틀 | ⭐⭐⭐ | 고급 백프레셔와 메시지 큐 관리 |
| 06 | Kafka 커넥터 | ⭐⭐⭐⭐ | 외부 시스템 통합과 이벤트 처리 |
| 07 | 액터 영속성 | ⭐⭐⭐⭐ | 영속성과 상태 복원, 자원 관리 |
| 08 | Pekko HTTP 서버 | ⭐⭐⭐⭐ | Pekko HTTP 서버와 순수 액터 시스템 |
| 09 | 분산 영속성 클러스터 | ⭐⭐⭐⭐⭐ | Cluster Sharding과 Durable State 통합 |
| 10 | 이벤트 소싱 영속성 | ⭐⭐⭐⭐⭐ | 완전한 감사 추적과 상태 재구성을 갖춘 이벤트 소싱 |
참고: 액터모델은 자바(+코틀린)가 지원하는 다양한 동시성프로그래밍을 이해하며 이를 이용하기때문에, 동시성 처리 기본기는 중요합니다.
Claude Code에 의해 코딩없이 생성된 프로젝트는 Projects 디렉토리에서 확인할 수 있습니다.
핵심 기술: Spring WebFlux + Apache Pekko Actor + SSE
학습 목표: 실시간 푸시 시스템과 액터 모델의 기본 통합 패턴
핵심 기술: Apache Pekko + 동시성 처리 패턴
학습 목표: Tell/Ask 패턴과 3가지 동시성 모델 비교 학습
핵심 기술: Pekko Streams + 백프레셔 + 토큰 기반 스로틀링
학습 목표: 고급 백프레셔 메커니즘과 자동 속도 조절
핵심 기술: 액터 라우팅 전략 + 동적 스케일링
학습 목표: 6가지 라우팅 전략과 로컬→클러스터 확장 설계
핵심 기술: 스트림 처리 기술 비교 + StreamProcessorActor
학습 목표: 4가지 스트림 처리 기술의 특성과 성능 비교
핵심 기술: 고급 스로틀링 + ThrottleManagerActor
학습 목표: 복합적인 백프레셔 전략과 메시지 큐 관리
핵심 기술: Kafka + Pekko Streams + Actor 통합
학습 목표: 외부 시스템과의 안정적인 이벤트 처리 통합
핵심 기술: Pekko Durable State + PostgreSQL + 자원 관리
학습 목표: 영속성과 상태 복원, 효율적인 자원 관리
핵심 기술: Pekko HTTP + WebSocket + Swagger UI + 순수 액터 시스템
학습 목표: Spring Boot 없이 경량 HTTP 서버 구축과 액터 시스템 전면 활용
핵심 기술: Pekko Cluster Sharding + Durable State + PostgreSQL
학습 목표: 분산 환경에서의 상태 관리와 클러스터 샤딩 마스터
핵심 기술: Pekko Event Sourcing + PostgreSQL + 스냅샷 + 감사 추적
학습 목표: 이벤트 소싱 패턴, 완전한 감사 기능, CQRS 구현
전통적인 CRUD 패턴을 넘어서 CQRS(Command Query Responsibility Segregation) 패턴을 구현할 때 액터 모델이 제공하는 핵심 가치:
다음과 같은 질문을 LLM에게 의뢰해~ 액터모델이 할수 있는것들을 조사한후 엑터모델을 활용한 다양한 고급기능 구현을 시도할수 있습니다.