Firebase 에뮬레이터를 Rust로 다시 짠 Firenook 공개, 쓰기 40배 빠르고 메모리는 10분의 1
- Firenook이 Firebase Local Emulator Suite를 대체하는 드롭인 교체품이라 firebase.json과 SDK, 포트를 그대로 두고 스크립트에서 한 단어만 바꾸면 됨. Java 설치도 필요 없음
- 쓰기 지연 중간값이 5.1 ms로 기존 208.2 ms보다 40배 빠르고, 최대 메모리는 2.11 GiB로 22.57 GiB의 10분의 1임
- 데이터를 .firenook/state에 남겨 재시작에 0.59초가 걸림. 기존 에뮬레이터는 30.8초였음
- 문서 120만 개, 사용자 6만 4천 명, 객체 5,400개, 함수 4개를 올린 상태에서 시작 시간이 602에서 796 ms로 측정됨
- 제작자는 로컬 완성도를 먼저 높인 뒤 셀프 호스팅을 검토하겠다고 밝혔고, Realtime Database 지원도 추가할 계획임
Hacker News 의견들
와 이거 대단하다. 근데 나중엔 프로덕션 클라우드 서비스까지 대체할 생각도 있음?
지금은 로컬을 완벽하게 만드는 게 먼저임. 안정화되면 클라우드보다 셀프 호스팅부터 생각 중인데, 어느 서비스에 쓰려는지 물어봐도 됨?
구글이 이 경험을 계속 방치하는 건 놀랍지도 않음. 작은 개발용 앱 하나가 Java 찌꺼기를 쏟아내는 걸 보면 속이 터짐. 예전 직장에서 같은 답답함에 관리 UI를 직접 만들기 시작했었음.
Firenook 콘솔 UI 한번 써보고 개발 경험에 빠진 부분이 있으면 알려줘.
Firebase 만든 사람인데 이거 진짜 멋짐. 잘했음.
제임스, 좋게 봐줘서 진짜 기쁨.
약간 다른 얘기인데, 이 정도로 복잡한 걸 만들 실력이면 왜 Firebase를 안 쓰고 다른 걸 쓰지? 나는 웹 개발 입문할 때 Firebase를 목발처럼 썼는데 이제 좀 벗어난 느낌임. 지금도 Firebase가 쓸 만하다고 봄? 아니면 나 같은 초보들을 위한 건가?
이 글 보면 반대 질문도 나옴. 그냥 개발 PC를 더 좋은 걸로 사면 되는데 왜 에뮬레이터를 Rust로 다시 짜는 거지? 성능이 해자라면 구글이 Spanner 같은 걸로 금방 개선하지 않겠음? 독한 질문인 건 알지만 무조건 칭찬하는 것보다 나은 것 같음.
Firebase 말고 다른 서비스도 많이 씀. 그래도 2026년에도 Firebase는 할 일을 잘한다고 봄. Supabase 팀처럼 로컬 개발 경험에 집중하는 곳이 없어서 Firebase 로컬 환경은 오래 그대로였음. 로컬 경험만 좋아져도 유지보수나 새 프로젝트 속도가 확 올라감.
Firestore 서브컬렉션은 진짜 잘 만든 기능임. NoSQL 중에서는 쿼리랑 인덱싱이 유연해서 DynamoDB보다 앱 개발에 낫고, 문제는 개발 도구임. Prisma나 Mongoose 같은 관리되는 타입 안전 쿼리 라이브러리가 없는 게 큰 흠임.
이거 진짜 반가움. 나도 Rust로 Firebase Realtime Database 오픈소스 버전(lark-sh/lark)을 만들고 있음. Firenook에서 Realtime Database를 지원할 생각이면 좋은 기반이 될 수도 있음.
Lark 좋아 보임. Realtime Database도 Firenook에 넣을 계획이라 꼭 살펴볼게.
이거 노드에 호스팅해서 내 Firebase를 직접 돌릴 수도 있음?