es un interceptor GraphQL delgado e intuitivo que verifica los datos almacenados en caché, maneja mutaciones con PouchDB y solo envía consultas modificadas o no almacenadas en caché al servidor. Luego, los datos devueltos se almacenan en caché para futuras solicitudes.
bun install bundl-server
bun install bundl-cache
recupera datos del caché local a la velocidad del rayo
? Almacenamiento en memoria: acceso rápido a los datos utilizados con frecuencia.
? Almacenamiento basado en disco: adecuado para conjuntos de datos más grandes que no caben en la memoria.
? Time-to-Live (TTL): desalojo automático de datos antiguos en función de limitaciones de tiempo o tamaño.
Se integra perfectamente con bases de datos relacionales y basadas en documentos.
? Compatibilidad con SQL: conéctese fácilmente a bases de datos MySQL, PostgreSQL y SQLite.
? Compatibilidad con NoSQL: opciones para la integración con MongoDB, Redis y otras bases de datos NoSQL.
? Sincronización con PouchDB y CouchDB para proporcionar acceso sin conexión a los datos
asegura
? Carga diferida: obtenga solo los datos necesarios, lo que reduce los tiempos de carga inicial.
? Procesamiento por lotes: realice operaciones masivas para mejorar la eficiencia.
? Indexación: acelere las operaciones de recuperación de datos con indexación inteligente.
? API RESTful: Fácil integración con otros servicios.
? Validación de datos: Mecanismos de validación sólidos para garantizar la integridad de los datos.
? Análisis en tiempo real: realice un seguimiento de varias métricas en tiempo real.
hace uso de Redis Stack para almacenar en caché datos como objetos JSON; Redis Stack debe instalarse de forma independiente. Las instrucciones de instalación se pueden encontrar en el sitio web de Redis aquí.
npm install -g bun
bun install bundl-server
Abra una línea de comando de terminal en la carpeta del directorio raíz que alberga el archivo de su servidor.
Ejecute los siguientes comandos:
touch .env # will create a new `.env` file if one doesn't exist
echo " QUERY= " [enter your query here] " " >> .env
Por ejemplo, si su esquema GraphQL se ve así:
query samplePokeAPIquery {
pokemon_v2_pokemon_by_pk ( id : ) {
name
id
height
base_experience
weight
pokemon_v2_pokemonsprites {
id
pokemon_id
sprites
}
}
}
Su entrada QUERY="[...]"
se verá así:
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
funciona mejor con bases de datos de estilo GraphQL, LRU Cache, PouchDB y CouchDB.
Para obtener información sobre la implementación del lado del cliente, visite el archivo README del cliente bunDL.
Creemos en el poder del código abierto. Al contribuir a bunDL, no solo estás generando un impacto en este proyecto, sino también apoyando a la comunidad de código abierto en general. Nuestra misión con bunDL es crear una herramienta accesible, y cada contribución, grande o pequeña, impulsa esta visión.
Este proyecto, bunDL, es un esfuerzo de código abierto. Si desea comprender el recorrido de nuestro proyecto y cómo contribuir, visite nuestro repositorio de demostración.
Acelerado por OS Labs y desarrollado por Ken Iwane, Shi Kuang, Brandon Do, Gio Mogi y Andrew Wicker.