ist ein intuitiver, schlanker GraphQL-Interceptor, der nach zwischengespeicherten Daten sucht, Mutationen mit PouchDB verarbeitet und nur geänderte oder nicht zwischengespeicherte Abfragen an den Server sendet. Die zurückgegebenen Daten werden dann für zukünftige Anfragen zwischengespeichert.
bun install bundl-server
bun install bundl-cache
ruft blitzschnell Daten aus dem lokalen Cache ab
? In-Memory-Speicher: Schneller Zugriff auf häufig verwendete Daten.
? Festplattenbasierter Speicher: Geeignet für größere Datensätze, die nicht in den Speicher passen.
? Time-to-Live (TTL): Automatische Entfernung alter Daten basierend auf Zeit- oder Größenbeschränkungen.
lässt sich nahtlos in relationale und dokumentenbasierte Datenbanken integrieren.
? SQL-Unterstützung: Einfache Verbindung zu MySQL-, PostgreSQL- und SQLite-Datenbanken.
? NoSQL-Unterstützung: Optionen für die Integration mit MongoDB, Redis und anderen NoSQL-Datenbanken.
? Synchronisierung mit PouchDB und CouchDB, um Offline-Zugriff auf Daten zu ermöglichen
sorgt dafür
? Lazy Loading: Rufen Sie nur die Daten ab, die benötigt werden, und verkürzen Sie so die anfänglichen Ladezeiten.
? Stapelverarbeitung: Führen Sie Massenvorgänge aus, um die Effizienz zu steigern.
? Indizierung: Beschleunigen Sie Datenabrufvorgänge mit intelligenter Indizierung.
? RESTful API: Einfache Integration mit anderen Diensten.
? Datenvalidierung: Robuste Validierungsmechanismen zur Gewährleistung der Datenintegrität.
? Echtzeitanalysen: Verfolgen Sie verschiedene Kennzahlen in Echtzeit.
nutzt Redis Stack zum Zwischenspeichern von Daten als JSON-Objekte; Redis Stack muss unabhängig installiert werden. Installationsanweisungen finden Sie hier auf der Redis-Website.
npm install -g bun
bun install bundl-server
Öffnen Sie eine Terminal-Befehlszeile im Stammverzeichnis, in dem sich Ihre Serverdatei befindet.
Führen Sie die folgenden Befehle aus:
touch .env # will create a new `.env` file if one doesn't exist
echo " QUERY= " [enter your query here] " " >> .env
Wenn Ihr GraphQL-Schema beispielsweise so aussieht:
query samplePokeAPIquery {
pokemon_v2_pokemon_by_pk ( id : ) {
name
id
height
base_experience
weight
pokemon_v2_pokemonsprites {
id
pokemon_id
sprites
}
}
}
Ihre QUERY="[...]"
-Eingabe sieht folgendermaßen aus:
touch .env // This will create a new ` .env ` file if one doesn ' t exist
echo "QUERY="{ pokemon_v2_pokemon_by_pk(id: ) { name id height base_experience weight pokemon_v2_pokemonsprites { id pokemon_id sprites } } }"" >> .env
Funktioniert am besten mit Datenbanken im GraphQL-, LRU-Cache-, PouchDB- und CouchDB-Stil.
Informationen zur clientseitigen Implementierung finden Sie in der bunDL-Client-README-Datei
Wir glauben an die Kraft von Open Source. Indem Sie zu bunDL beitragen, leisten Sie nicht nur einen Beitrag zu diesem Projekt, sondern unterstützen auch die breitere Open-Source-Community. Unsere Mission mit bunDL ist es, ein zugängliches Tool zu schaffen, und jeder Beitrag, ob groß oder klein, treibt diese Vision voran.
Dieses Projekt, bunDL, ist ein Open-Source-Projekt. Wenn Sie den Weg unseres Projekts verstehen und wissen möchten, wie Sie dazu beitragen können, besuchen Sie unser Demo-Repository
Beschleunigt von OS Labs und entwickelt von Ken Iwane, Shi Kuang, Brandon Do, Gio Mogi und Andrew Wicker.