storh
storh er et selvstændigt PHP-datalager bygget op omkring filer: JSONC-dokumenter, en segmenteret log med tilføjelser og en kø med tilføjelser. Det gemmer poster med UUIDv7-id'er, understøtter streaminglæsninger og markør- eller tidsområdeforespørgsler og bruger atomiske filsystemhandlinger i stedet for en databaseserver.
Kaldere angiver en mappe. storh finder ikke selv applikationsstier, læser ikke globale konstanter og kræver ikke en frameworkadapter.
Motorer
DocStoregemmer én JSONC-fil pr. post med stier opdelt efter de sidste UUID tegn. Bedst til punktlæsninger efter id og indekserede feltforespørgsler.SegmentedLogføjer poster til segmentfiler som JSON-linjer med præfikser for byte-længde og kontrolsum. Bedst til streams med mange tilføjelser og markør- eller tidsområdelæsninger.Queueføjer varige jobhændelser til og holder køtilstanden i hukommelsen. Bedst til varig arbejdsfordeling mellem processer.
Er du i tvivl om, hvilken der passer til din arbejdsbelastning? Se Valg af motor for en sammenligning side om side.
DocStore, SegmentedLog og Queue er klassealiaser for implementeringsklasserne DocPerFileStore, SegmentedLogStore og LogQueue, så begge navne henviser til den samme klasse.
Krav
- PHP 8.2 eller nyere
ext-json- et lokalt eller monteret filsystem med semantik for atomisk omdøbning i en mappe