storh
storh je samostatné úložiště PHP založené na souborech: dokumenty JSONC, segmentovaný log pouze s přidáváním na konec a fronta se stejným principem. Ukládá záznamy s UUIDv7 ID, podporuje streamované čtení a dotazy pomocí kurzoru nebo časového rozsahu a místo databázového serveru využívá atomické operace souborového systému.
Volající zadávají adresář. storh sám nevyhledává cesty aplikace, nečte globální konstanty a nevyžaduje adaptér frameworku.
Enginy
DocStoreukládá pro každý záznam jeden soubor JSONC do cesty rozdělené podle posledních UUID znaků. Nejlépe se hodí pro jednotlivá čtení podle ID a dotazy na pole s indexem.SegmentedLogpřidává záznamy do souborů segmentů jako řádky JSON chráněné prefixem s délkou v bajtech a kontrolním součtem. Nejlépe se hodí pro proudy s častým přidáváním a čtením pomocí kurzoru či časového rozsahu.Queuepřidává trvalé události úloh a uchovává stav fronty v paměti. Nejlépe se hodí pro trvalé předávání práce mezi procesy.
Nejste si jistí, který engine vyhovuje vaší zátěži? Podívejte se na Výběr enginu, kde najdete přímé srovnání.
DocStore, SegmentedLog a Queue jsou aliasy tříd implementací DocPerFileStore, SegmentedLogStore a LogQueue, takže obě označení odkazují na stejnou třídu.
Požadavky
- PHP 8.2 nebo novější
ext-json- místní nebo připojený souborový systém s podporou atomického přejmenování v rámci adresáře