화면 제어를 넘어 비동기 동시성으로: 당근 동네걷기의 오버레이 아키텍처 전환
당근 동네걷기 서비스는 웹뷰와 네이티브가 뒤섞여 동시다발적으로 발생하는 오버레이 UI의 순서 제어 문제를 해결하기 위해, 추상화 단위를 UI 데이터에서 비동기 함수 실행 단위로 전환하고 자바스크립트 마이크로태스크 스케줄링을 접목했습니다.
당근 동네걷기 서비스는 웹뷰와 네이티브가 뒤섞여 동시다발적으로 발생하는 오버레이 UI의 순서 제어 문제를 해결하기 위해, 추상화 단위를 UI 데이터에서 비동기 함수 실행 단위로 전환하고 자바스크립트 마이크로태스크 스케줄링을 접목했습니다.
여기어때 개발팀이 웹 브라우저와 네이티브 앱 웹뷰 환경 간의 상이한 토큰 수급 경로를 분석하고, 이를 서버 사이드 중심의 HttpOnly 쿠키 구조로 일원화해 XSS 위협과 화면 깜빡임 문제를 해결한 설계 방식을 공유했습니다.
토스뱅크가 Next.js Pages Router의 유지보수 모드 전환에 대응해 App Router와 서버 컴포넌트(RSC) 도입을 검증했으나, 웹뷰 렌더링 지연과 점진적 마이그레이션 결함, 관측성 부재 등의 비용이 이득을 초과한다고 판단해 기존 체제를 유지하기로 결정했습니다.
당근 프론트엔드 코어 팀이 웹뷰의 초기 로딩 지연을 해결하기 위해 크로스플랫폼 프레임워크 Lynx를 검토 및 도입했습니다. 경량 엔진 PrimJS와 듀얼 스레드 기반 즉각 첫 프레임 렌더링(IFR) 구조를 활용해 점진적 도입 체계를 마련했습니다.
당근이 웹뷰의 초기 로딩 병목을 해결하고 네이티브 수준의 UI 렌더링을 구현하기 위해 바이트댄스의 신생 크로스플랫폼 프레임워크 'Lynx'를 검토·도입했다. 기존 네이티브 구조를 유지하면서 점진적으로 적용하는 브라운필드 방식과 독립적인 CDN 배포 체계를 목표로 삼았다.
어도비가 UXP 9.0~9.4 변경 사항과 앱별 지원표를 정리했다. 예외 보고의 선택 활성화, macOS 한정 기능과 웹뷰 프레임 경계 등 조건을 확인하고 실제 배포 앱의 런타임을 대조해야 한다.