- Hafif dağıtım ortamları için gerçek zamanlı sürüm kontrollü veritabanı
- Prototipleme, self-hosting, single-tenant uygulamalar ile backend ve DB olmayan ultra hafif multi-tenant ortamlar için optimize edilmiştir
- Ayrı altyapı gerektirmez → tüm DB istemci üzerinde çalışır ve sunucu indekslemesine ihtiyaç duymaz
- Offline-First mimari → sunucu çökse bile istemci üzerinde çalışmaya devam eder ve kurtarılabilir
- Edge-Native → işlemlerin çoğunu istemci tarafında gerçekleştirerek sunucu yükünü en aza indirir
- Gerçek zamanlı senkronizasyon desteği → istemci ve sunucu durumunu otomatik olarak senkronize eder
- Başlatma sırasında
peers içinde replikaların konumu ayarlanarak sunucu kümesi kolayca yapılandırılabilir
- Senkronizasyon protokolüyle sunucular arası senkronizasyonu destekler ve birden fazla sunucu eklense bile kod değişikliği olmadan ölçeklenebilir
- React Hooks kullanımı
- GoatDB'nin React Hooks yapısı, tam teşekküllü bir durum yönetimi çözümü sunar ve senkron (mutable) durum değişikliği yapılmasına olanak tanır
- Örneğin
task.set('done', true) gibi değişiklikler anında belleğe yansır; GoatDB ise fark hesaplama (diffing), yerel depoya commit etme, sunucu senkronizasyonu ve çakışma çözümünü arka planda otomatik olarak işler
- Güvenlik modeli
- Her düğüm bir açık/gizli anahtar çifti tutar ve gizli anahtar asla dışarıya açılmaz
- Tüm commit'ler dijital olarak imzalanır; böylece manipüle edilmiş değişiklikler otomatik olarak reddedilir
- Özelleştirilebilir yetki politikalarıyla veri erişimi kontrol edilebilir
- Çakışma çözüm yöntemi
- Three-Way Merge: Değişiklikler çakıştığında otomatik olarak birleştirilip düzenlenir
- Logoot tarzı ardışık ID ataması: Veri içindeki ekleme/silme çakışmalarını önleyen benzersiz tanımlayıcı sistemi uygulanır
Örnek projeler
- Todo → self-hosting için minimal modern yapılacaklar listesi
- EdgeChat → tamamen tarayıcı tabanlı ChatGPT tarzı arayüz
- Ovvio → 2024'ten beri GoatDB kullanan bir üretkenlik aracı
1 yorum
GOAT.. vay canına