XML 데이터 로딩 최적화 사례
회사에서 현재 작업중인 프로젝트는 기획자 분들이 데이터를 XML로 관리하고 있다. 이 XML이라는 포맷은 사람이 읽고 쓰기는 쉽지만 용량이 크고 파싱이 어려운 문제가 있는데 프로젝트 라이브 초창기에는 절대적인 데이터 양이 많지 않아 성능 문제가 없었다. (발견이 늦었다..) 이런 상태로 오랫동안 라이브 서비스가 진행되다 보니 XML 파일의 개수만 200개가 넘어갔고 총 파일 용량도 150MB 정도로 매우 커지면서 여러 문제가 생기기 시작했다. 로딩 속도가 많이 느려졌다 (PC 빌드 기준으로도 거의 10초가량 소요) 파일 포맷 특성상 파싱하는 과정에서 임시 문자열 (string) 객체가 많이 생성되어 앱 시작과 동시에 메모리 파편화가 심하게 일어나고, 또 메모리를 많이 사용하다보니 저사양 모바일 디바이스에..
2023.12.28