모두를 위한 성능 노트

모두를 위한 성능

모바일 앱에서 성능은 시계의 시간과 같은 기본 기능만큼이나 중요합니다. Pinterest는 주요 사용자 경험 전반에 걸쳐 성능을 측정, 보호 및 개선하는 데 중점을 둡니다. 사용자가 콘텐츠를 기다리는 시간을 반영하는 사용자 체감 지연 시간은 중요한 성능 지표입니다. 특히 시각적으로 완료되는 시간(Visually Complete time)을 측정하는 것은 이전에는 복잡하고 시간이 많이 소요되었습니다. 시각적으로 완료되는 시간은 크게 달라지기 때문에 사용자 정의 측정 로직이 필요했으며, 이는 성능 작업에 방해가 되었습니다. Pinterest의 성능 팀은 제품 엔지니어가 지연 시간 데이터에 쉽게 접근할 수 있는 솔루션을 모색했습니다. 이를 통해 시각적으로 완료되는 시간 로직을 기본 UI 클래스에 통합하여 모든 UI 표면에 대한 지연 시간을 자동으로 측정할 수 있게 되었습니다. 이 시스템은 뷰 트리를 탐색하고 렌더링 진행 상황을 위해 주요 미디어 뷰를 식별하고 추적하여 작동합니다. 이 통합 시스템은 60개 이상의 Android 표면에 대한 지연 시간 데이터를 제공하여 성능 모니터링을 지원합니다. 이를 통해 수명이 짧은 기능들을 포함한 다양한 기능 간의 공정한 성능 비교가 가능합니다. 이 단순화된 접근 방식은 모든 엔지니어에게 성능을 가시화하여 사용자 체감 지연 시간 최적화를 촉진합니다. 유사한 구현은 iOS 및 웹 플랫폼으로도 확장되었습니다.
CdXz5zHNQW_E0CjwHBss6.png