Distributed Web Worker 개발 중 Promise 및 이벤트 처리 이슈

Source

  • Google Keep/Distributed webworker 개발 중 이슈.md

Summary

분산 웹 워커 개발 중 RPC 호출과 비동기 작업 처리 간의 Promise 해결(resolve) 방식을 논의한 내용입니다. Customer의 요청이 Middleware를 거쳐 Worker에서 비동기적으로 처리될 때, Worker Pool의 _next() 재귀 호출 방식과 달리 이벤트 모델을 적용하기 위해 연구했습니다. 핵심 발견 사항으로는 Promise의 resolve 함수를 외부에서 호출하거나, Promise 내부에 이벤트 리스너를 등록하여 resolve를 호출하는 것이 가능하다는 점입니다. 또한 RxJS Observable을 활용한 객체 이벤트화 가능성을 제시했습니다.

Key Points

  • RPC 호출 시 Customer -> Middleware -> Worker 간의 비동기 흐름에서 결과 반환(Promise resolve) 방식이 핵심 이슈임
  • 기존 Worker Pool의 _next() 재귀 호출 방식 대신 이벤트 기반 모델 구현을 시도함
  • Promise의 resolve 함수를 외부에서 호출하거나, 내부 이벤트 리스너를 통해 호출하는 것이 기술적으로 가능함
  • RxJS Observable을 사용하여 객체 이벤트를 처리하는 방안을 고려 중임