deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (native)

Firenook, Rust ile yazılmış Firebase emülatör alternatifini duyurdu: 40 kat daha hızlı yazma ve 10 kat daha az bellek iddiası

Hacker News'in ana sayfasına çıkan, Firebase Local Emulator Suite'in Rust ile yeniden yazılmış hali olan Firenook; mevcut yapılandırmaları, portları ve SDK'ları koruyarak 40 kat daha hızlı yazma ve onda bir bellek kullanımı iddia ediyor.

Firenook, Rust ile yazılmış Firebase emülatör alternatifini duyurdu: 40 kat daha hızlı yazma ve 10 kat daha az bellek iddiası

Ne duyuruldu

Google'ın Firebase Local Emulator Suite'inin Rust ile yeniden yazılmış hali olan Firenook, 6 Kasım 2026'da Hacker News'in ana sayfasına çıktı. Proje kendini neredeyse doğrudan yerine geçebilen bir alternatif olarak konumlandırıyor: geliştiriciler package scriptlerindeki firebase emulators:start komutunu firenook emulators:start ile değiştiriyor ve geri kalan her şeyi — firebase.json yapılandırması, SDK kurulumu, portlar ve içe/dışa aktarma formatı — olduğu gibi bırakıyor. Dağıtım için Google'ın firebase-tools CLI'si hâlâ gerekiyor ve proje, ikisinin yan yana kullanılmasını öngörüyor.

Performans iddiaları

Projenin sitesindeki öne çıkan rakamlar, kendisinin yaptığı bir benchmarktan geliyor: iki saatlik bir üretim uygulaması trafiği, her emülatör paketine sırayla, tek bir sunucuda ve her işlem istemci tarafından zamanlanarak yeniden oynatıldı. Test uygulaması 211.205 Firestore belgesi ve Cloud Storage'da 6,7 GB veri içeriyordu.

Firenook'un ölçümlerine göre medyan yazma süresi resmi emülatördeki 208,2 ms'ye karşılık 5,1 ms, tepe bellek kullanımı 22,57 GiB'a karşılık 2,11 GiB ve veriler korunarak yapılan yeniden başlatma 30,8 saniyeye karşılık 0,59 saniyede tamamlandı. Listener güncellemeleri yaklaşık 19 kat, küçük bir sıralı sorgu 8 kat daha hızlı tamamlandı ve çalışma boyunca toplam CPU kullanımı 1.586 saniyeden 616 saniyeye düşerek yaklaşık yüzde 61 azaldı. Proje, paketinin 26 sorgu şeklinin 25'ine daha hızlı yanıt verdiğini ve kalan birinde eşit kaldığını bildiriyor. Bunlar satıcının kendi rakamlarıdır ve bağımsız olarak doğrulanmamıştır.

Uyumluluk ve kapsam

Firenook, sekiz hizmeti alışılmış portlarında taklit ediyor: Firestore (8080), Authentication (9099), Cloud Storage (9199), Cloud Functions (5001), Pub/Sub (8085), Cloud Tasks (9499), Eventarc (9299) ve Extensions. Firestore desteği realtime listener'ları, Security Rules'ı ve adlandırılmış veritabanlarını kapsıyor; Auth emülatörü parola, e-posta bağlantısı, telefon, MFA, passkey, tenant ve blocking function'ları içeriyor; Functions ise HTTP, callable ve streaming giriş noktalarını, kaydedildiğinde kod yeniden yükleme özelliğiyle birlikte ele alıyor.

Realtime Database, Hosting, App Hosting ve Data Connect taklit edilmiyor; ancak proje, bunları yapılandıran bir firebase.json dosyasının yine de bir uyarıyla başlayacağını söylüyor. Veriler, iki paket arasında resmi dışa aktarma formatıyla çift yönlü taşınabiliyor, dolayısıyla Google'ın emülatörüne dönmek her zaman mümkün kalıyor.

Kalıcılık, testler ve araçlar

--keep-data bayrağı, Firestore, Auth ve Storage durumunu yeniden başlatmalar arasında koruyor — proje, milyonlarca belgeyle bile yaklaşık yarım saniyede geri dönüş iddia ediyor — ve resmi paketin her çalışma arasında gerektirdiği önce dışa sonra içe aktarma döngüsünü ortadan kaldırıyor. Bir çökme durumunda Firenook, en fazla son bir saniyelik yazmaların kaybolduğunu söylüyor; resmi emülatörse son dışa aktarmasından bu yana her şeyi kaybedebiliyor.

emulators:exec paketi başlatıyor, her şey hazır olduğunda bir komut çalıştırıyor ve çıkış kodunu iletiyor; bu, CI pipeline'larına yönelik. Sağlanması gereken bir Java runtime yok, ancak üretimde olduğu gibi Functions'ı yürüten hâlâ Node.

İki özellik, Google'ın araçlarındaki eşdeğerlerinin ötesine geçiyor. Emulator UI portunda sunulan yerleşik bir konsol, Functions, Pub/Sub, Cloud Tasks ve Eventarc için canlı çağrıları ve sonuçları gösteriyor — Google'ın kendi Emulator UI'sı bu hizmetleri yalnızca bir log olarak ortaya koyuyor. Ayrıca firenook mcp, Claude Code, Cursor ve VS Code gibi kodlama ajanlarına 54 araç sunarak bir ajanın başarısız function çağrılarını incelemesine, Security Rules'ın bir isteği neden reddettiğini sormasına ve çağrıları yerel olarak yeniden oynatmasına izin veriyor.

Neden önemli

Firebase emülatörleri çok sayıda geliştirme ve CI iş akışının iç döngüsünde yer alıyor ve Java ayak izi, bellek iştahı ile yeniden başlatma maliyeti sürekli dile getirilen şikayetler. Firenook'un rakamları kendi benchmarkının dışında da tutarsa, pratik etkisi; uygulama koduna dokunmadan daha hızlı test döngüleri, daha ucuz CI runner'ları ve yeniden başlatmalara dayanabilen yerel paketler olacak. MCP entegrasyonu ayrıca, otonom bir yardımcıya yerel bir ortama güvenli okuma-ve-yeniden-oynatma erişimi vermeyi beklenen bir duruma getiren, ajan odaklı geliştirmeye doğru daha geniş bir eğilimi yansıtıyor. Ödünleşimlerse bunun erken aşama bir yazılım olması — güncel sürüm 0.2.1 — ve hizmet kapsamının eksik olması; bu yüzden Realtime Database veya Hosting'e bel bağlayan ekiplerin yanında Google'ın paketine hâlâ ihtiyaç duyacakları gerçeği.

  • #rust
  • #firebase
  • #developer-tools
  • #local-development
  • #testing