HN 日本語サマリー

← 一覧へ戻る
プログラミング

Show HN: Firenook – Rust製のFirebaseエミュレーター:書き込み速度40倍、RAM使用量10分の1

Show HN: Firenook – Firebase emulators in Rust: 40× faster writes, 10× less RAM (firenook.dev)

15 pointsby sanjevirau1 コメント

要約

Firebase開発者は、公式エミュレーターのパフォーマンスと開発者体験の悪さに不満を抱えていました。そこで、Rustでゼロから再構築されたFirenookが登場しました。これはFirebaseエミュレーターのドロップイン代替品であり、書き込み速度が40倍、RAM使用量が10分の1と大幅に改善されています。新しくモダンなUIも備え、開発体験を向上させます。

全文翻訳

Show HN: Firenook – Rust製のFirebaseエミュレーター:書き込み速度40倍、RAM使用量10分の1

HNの皆さん、こんにちは。私たちは長年Firebaseを使って開発してきましたが、Firebase開発者がコストをかけずにアプリを構築する唯一の方法は、公式のFirebase Emulator Suiteを使用することでした。

しかし、このスイートの問題点は、Javaに依存しており、何年も更新されていない古いコンソールUIを使用していることです。大量のデータをサポートするように設計されておらず、開発者体験も非常に悪いのです。長らく、高性能なラップトップでさえメモリ不足に陥り、最悪なことに、そのたびに永続化されていたデータがすべて失われていました。

私たちは正直、これにフラストレーションを感じており、「もしFirebaseエミュレーターを、本来あるべき正しい方法で構築したらどうなるだろうか?」と考えました。

そこでご紹介するのがFirenookです。Firebase開発者向けのFirebase Emulator Suiteの、より高速なドロップイン代替品です。書き込み速度は40倍、実行に必要なRAMは10分の1です。私たちはまずRustで単一のエンジンとして構築するという正しいアプローチを取り、Javaの依存関係をなくし、モダンなWebスタックを使用して新しいコンソールUIをゼロから再構築しました。

その結果、公式スイートが22GBのRAMを必要としたのに対し、Firenookでは200万件のデータをロードしても約2GBのRAMしか消費できるようになりました。処理速度は格段に向上し、再構築されたコンソールUIは、Firebase Functionsのロギングから、JSONでのFirestoreドキュメントの編集まで、最高の開発者体験を提供します。

私たちは約2ヶ月間かけてこれを徹底的に開発し、公開する前に1ヶ月間社内で実行しました。これにより、他の開発者もFirenookを利用でき、さらに改善に貢献できるようになります。

Firenookはまだ新しく、至らない点も多いかと思います。ぜひあなたのプロジェクトで試してみて、問題があればお知らせください。

ありがとうございます。