v0.3.0-alpha - Execution Beyond HTTP | 이제 이벤트도 실행 흐름입니다 ⚙️
🦴 Spine v0.3.0-alpha
Execution Beyond HTTP | 이제 이벤트도 실행 흐름입니다 ⚙️
Spine의 실행 모델이 HTTP 요청을 넘어 이벤트 기반 실행(Event-driven execution)까지 확장되었습니다.
Kafka와 RabbitMQ를 통해 들어오는 이벤트 역시 HTTP 요청과 동일한 Pipeline 기반 실행 흐름으로 처리됩니다.
Spine now extends its execution model beyond HTTP into event-driven execution.
Events from Kafka and RabbitMQ are executed through the same explicit Pipeline model as HTTP requests.
✨ 추가된 기능 | Added
Event Consumer Runtime 추가 | Event Consumer Runtime
- Kafka / RabbitMQ 이벤트를 실행 단위로 처리하는 Consumer Runtime 도입
- 이벤트 처리 역시 Pipeline 기반으로 실행되어 HTTP와 동일한 실행 모델 유지
- 이벤트 핸들러를 Controller 스타일 메서드로 정의 가능
- Introduces a Consumer Runtime for executing Kafka and RabbitMQ events
- Event handling follows the same Pipeline-based execution model as HTTP
- Event handlers can be defined as controller-style methods
Kafka Consumer / Producer 지원 | Kafka Read & Write Support
- Kafka 이벤트 발행(Write) 및 소비(Read) 인프라 추가
- EventName → Topic 매핑 기반 메시지 처리
- 명시적인 BootOptions 설정을 통해 Kafka 활성화
- Adds Kafka-based event publishing and consuming infrastructure
- Messages are routed using EventName-to-Topic mapping
- Kafka is enabled explicitly via BootOptions
RabbitMQ Consumer / Producer 지원 | RabbitMQ Read & Write Support
- RabbitMQ 기반 이벤트 발행 및 소비 지원
- Exchange / RoutingKey 기반 이벤트 라우팅
- Kafka와 동일한 Consumer Runtime 구조를 공유
- Adds RabbitMQ-based event publishing and consuming support
- Event routing via Exchange and RoutingKey
- Shares the same Consumer Runtime architecture as Kafka
Consumer 전용 Context & Resolver 분리 | Consumer-specific Context & Resolvers
- HTTP Context와 분리된 ConsumerRequestContext 도입
- EventName, Payload, DTO 전용 ArgumentResolver 제공
- HTTP / Event 실행 간 컨텍스트 오염 방지
- Introduces ConsumerRequestContext separated from HTTP context
- Provides event-specific ArgumentResolvers (EventName, Payload, DTO)
- Prevents context leakage between HTTP and event execution
🛠 변경됨 | Changed
ExecutionContext 기준 통합 | ExecutionContext Standardization
- Resolver 계약을 ExecutionContext 기준으로 통합
- HTTP / Event 모두 동일한 Resolver 인터페이스 사용
- 실행 모델 중심 구조를 더욱 명확히 드러냄
- Standardizes resolver contracts around ExecutionContext
- Both HTTP and event execution share the same resolver interface
- Further clarifies Spine’s execution-centric architecture
Consumer Runtime에 Pipeline 도입 | Pipeline Integration for Consumers
- 이벤트 실행 시에도 Invoker + Resolver + Interceptor 체인 적용
- HTTP 전용이 아닌 “실행 파이프라인”으로 Pipeline 재정의
- Applies Invoker, Resolver, and Interceptor chains to event execution
- Redefines Pipeline as an execution pipeline, not HTTP-specific
⚠️ Alpha 안내 | Alpha Notice
Spine v0.3.0-alpha는 알파 버전입니다.
- API 및 내부 구조는 변경될 수 있습니다.
- 문서 및 예제는 지속적으로 보완될 예정입니다.
- 피드백과 이슈 제보를 적극 환영합니다.
Spine v0.3.0-alpha is an alpha release.
- APIs and internal structures may change.
- Documentation and examples will continue to evolve.
- Feedback and issue reports are highly welcome.