Pereiti prie turinio

storh

storh yra atskira PHP duomenų saugykla, sukurta failų pagrindu: JSONC dokumentai, tik papildymui skirtas segmentuotas žurnalas ir tik papildymui skirta eilė. Joje saugomi įrašai su UUIDv7 ID, palaikomas srautinis skaitymas ir užklausos pagal žymeklį arba laiko intervalą, o vietoj duomenų bazės serverio naudojamos atominės failų sistemos operacijos.

Iškviečianti programa pateikia katalogą. storh automatiškai neieško programos kelių, neskaito globalių konstantų ir nereikalauja karkaso adapterio.

Varikliai

  • DocStore kiekvienam įrašui saugo po vieną JSONC failą; keliai suskaidomi pagal pirmus du paskutinės UUID grupės simbolius. Geriausiai tinka tiesioginei paieškai pagal ID ir indeksuotoms užklausoms pagal laukus.
  • SegmentedLog prideda įrašus prie segmentų failų kaip JSON eilutes, apsaugotas baitų ilgio ir kontrolinės sumos priešdėliu. Geriausiai tinka intensyviai pildomiems srautams, kai įrašai skaitomi pagal žymeklį arba laiko intervalą.
  • Queue prideda patvarius užduočių įvykius ir laiko eilės būseną atmintyje. Geriausiai tinka patvariam užduočių paskirstymui tarp procesų.

Nežinote, kuris variantas tinka jūsų darbo krūviui? Žr. Variklio pasirinkimas, kur pateiktas palyginimas greta.

DocStore, SegmentedLog ir Queue yra įgyvendinimo klasių DocPerFileStore, SegmentedLogStore ir LogQueue slapyvardžiai, todėl abu pavadinimai nurodo tą pačią klasę.

Reikalavimai

  • PHP 8.2 arba naujesnė versija
  • ext-json
  • vietinė arba prijungta failų sistema, palaikanti atominį pervadinimą aplanke

Kas toliau