피드로 돌아가기
InfoQInfoQ
Backend

Rust Shared Core 도입을 통한 7개 언어 SDK 개발 기간 50% 단축

Presentation: Rust at the Core - Accelerating Polyglot SDK Development

Spencer Judge2026년 6월 25일32advanced

Context

Durable Execution 보장을 위해 클라이언트 SDK에 약 70,000라인의 복잡한 State Machine 로직 구현이 필요함. 7개 이상의 다양한 언어 SDK를 개별적으로 구현할 경우 코드 중복으로 인한 유지보수 비용 증가와 언어 간 동작 불일치(Divergence) 위험이 상존함.

Technical Solution

  • Rust 기반의 Shared Core 아키텍처를 설계하여 핵심 비즈니스 로직을 단일 구현처로 통합
  • 각 언어별 SDK는 Rust Core를 감싸는 얇은 Language-specific Layer로 구성하여 Idiomatic Experience 제공
  • C 언어의 대안으로 Memory Safety와 Portability가 뛰어난 Rust를 선택하여 다양한 OS(Linux, macOS, Windows) 및 CPU 아키텍처(ARM, x64) 대응
  • 단순 자동 생성을 지양하고 사용자가 익숙한 언어적 특성을 반영하는 API 설계를 통해 UX 최적화
  • 외부 동작 주입이 필요한 지점에 Hook 구조를 사전 설계하여 확장성 확보

- 다국어 SDK 지원 시 로직 중복 가능성을 파악하여 Shared Core 도입 검토 - Core logic과 Language Layer 간의 인터페이스 설계 시 단순 Plumbing이 아닌 Idiomatic API 설계 여부 확인 - 다양한 플랫폼 배포를 위해 Rust와 같은 Portable 언어 및 적절한 Serialization 라이브러리 선정 - 기능 확장을 위한 Hook 포인트 설계 여부 점검

원문 읽기