Über RESP verbinden
Verwenden Sie MGET, um gecachte PostgreSQL-Zeilen mit einem RESP2-Client zu lesen.
Starten Sie die verworfene Demo mit ihrer RESP-Konfiguration:
docker compose -f examples/compose.yaml -f examples/compose.resp.yaml up --build --wait
Damit wird RESP unter 127.0.0.1:56379 aktiviert. Beim erneuten Erstellen der
Demo werden ihre Daten verworfen. Das folgende Token ist öffentlich und nur für
diese lokale Demo bestimmt.
redis-cli
export REDISCLI_AUTH=DemoRespToken_0123456789abcdef0123456789
redis-cli -2 -p 56379 MGET 'CRUD:pglc_demo.public.items:{"id":42}'
Die Antwort enthält Zeile 42 als JSON. Fehlende Zeilen geben nil zurück.
redis-cli liest das Token aus
REDISCLI_AUTH.
Node.js
npm --prefix examples/node-postgres ci --ignore-scripts
npm --prefix examples/node-postgres run resp
Das Beispiel verwendet das offizielle Paket @redis/client und prüft Reihenfolge,
Duplikate, Null-Eingabepositionen und fehlende Zeilen. Sein Helfer lässt
Null-Schlüssel auf der Leitung weg und stellt ihre Positionen nach dem Dekodieren
wieder her.
Für die Verbindung aus Ihrer Anwendung:
import { createClient } from '@redis/client';
const client = createClient({
url: 'redis://127.0.0.1:56379',
password: process.env.PGLC_RESP_TOKEN,
RESP: 2,
disableClientInfo: true,
});
client.on('error', console.error);
await client.connect();
try {
const values = await client.mGet(['CRUD:pglc_demo.public.items:{"id":42}']);
const rows = values.map(value => value === null ? null : JSON.parse(value));
console.log(rows);
} finally {
await client.close();
}
Setzen Sie PGLC_RESP_TOKEN auf das Token Ihres Servers. Halten Sie diese
Verbindung über mehrere Anfragen offen. Diese Client-Einstellungen
wählen RESP2 und überspringen Redis-spezifische Client-Metadatenbefehle.
Verwenden Sie ausschließlich Token-Authentifizierung, ohne Benutzernamen oder
Redis-Datenbanknummer.
RESP-Worker verwenden für alle Clients eine konfigurierte PostgreSQL-Rolle. Für Lesevorgänge innerhalb einer SQL-Transaktion verwenden Sie Node.js-SQL oder Go-SQL. Die RESP-Referenz beschreibt Befehle und Limits.
Mit SQL vergleichen
Der gemeinsame Benchmark
führt RESP MGET, SQL mget und vorbereitetes SQL mit denselben Schlüsseln und
dekodierten Ergebnissen sowohl in Node.js als auch in Go aus.
Für breiteres Anwendungs-Caching lesen Sie den Leitfaden zu PostgreSQL und Redis Cache-aside.
Demo stoppen
docker compose -f examples/compose.yaml -f examples/compose.resp.yaml down
Aktualisiert .