Magazine online
Paginile de produs, prețurile și nivelurile de stoc sunt citite de mii de ori pe secundă și reîmprospătate după etichetă când se schimbă catalogul.
Păstrați cele mai fierbinți date în memorie și răspundeți la citiri în mult sub o milisecundă, pe un motor care pune la treabă fiecare nucleu.
Un succes se întoarce direct din memorie. Baza de date nu este atinsă.
O demonstrație animată cu comenzi HotKV reale și răspunsuri de exemplu. Faceți clic pe orice pas pentru a sări la el. Comenzile și răspunsurile rămân în engleză, exact așa cum le tastați și le vedeți în HotKV.
Bazele de date sunt lente și scumpe de lovit pentru date citite de mii de ori pe secundă. Fiecare vizualizare de pagină, apel API sau reîmprospătare de dashboard repetă aceeași interogare, iar baza de date devine blocajul cu mult înaintea aplicației dvs.
HotKV stă în fața bazei de date și ține rezultatele în memorie. Aplicația dvs. citește mai întâi din HotKV și revine la baza de date doar la o ratare. Pentru că HotKV rulează comenzile pe mai multe thread-uri simultan, un cache aglomerat nu îngrămădește fiecare client printr-un singur nucleu, iar etichetele vă permit să invalidați un grup întreg de intrări când datele de bază se schimbă.
Un succes se întoarce direct din memorie. Baza de date nu este atinsă.
GET product:1001La o ratare, aplicația citește baza de date o dată și pune rezultatul în cache pentru cinci minute.
SET product:2002 "{\"name\":\"Oak desk\",\"price\":420}" EX 300Fiecare pagină din cache care arată produse de iluminat poartă aceeași etichetă.
TAG.SET product:1001 catalog:lightingPrețurile s-au schimbat. Listați fiecare cheie cu eticheta și ștergeți-le într-un singur pipeline.
TAG.MEMBERS catalog:lightingUn token flash, deja setat, care trebuie să dispară după 250 ms, cu precizie de nanosecundă.
NEXPIRE flash:token:9 250000000Paginile de produs, prețurile și nivelurile de stoc sunt citite de mii de ori pe secundă și reîmprospătate după etichetă când se schimbă catalogul.
Răspunsurile pentru endpointurile populare sunt puse în cache cu TTL scurte, deci vârfurile de trafic lovesc memoria, nu baza de date.
Fragmentele randate și metadatele articolelor sunt păstrate în cache minute în șir și invalidate după etichetă când un editor publică.
EXPIRE și PEXPIRE funcționează cum vă așteptați. NEXPIRE adaugă precizie de nanosecundă.
EXPIREPEXPIRENEXPIREMarcați cheile cu TAG.SET, apoi găsiți fiecare cheie cu o etichetă.
TAG.SETTAG.MEMBERSSarcinile mari pot fi comprimate, ca mai mult din setul dvs. de lucru să încapă în memorie.
Comenzile se execută pe thread-uri paralele, deci debitul crește odată cu nucleele. Cifrele sunt pe pagina Performanță.
GETMGETHotKV vorbește protocolul Redis (RESP2 și RESP3), deci clienții Redis standard se conectează la el. Verificați referința de comenzi pentru comenzile pe care vă bazați.
Etichetați cheile cu TAG.SET când le puneți în cache, apoi apelați TAG.MEMBERS și ștergeți ce se întoarce.
Este debitul GET cu pipelining din benchmark-ul publicat al HotKV. Metoda și hardware-ul sunt pe pagina Performanță.
HotKV vorbește protocolul Redis, așa că puteți îndrepta spre el un client existent și rula aceleași comenzi.