From fd11327b7f9814de002d969c2aab56a0c6b7a406 Mon Sep 17 00:00:00 2001 From: DarkGopher Date: Wed, 25 Jun 2025 22:54:16 +0200 Subject: [PATCH] hybrid and PML --- storage/hybrid/PML.txt | 26 ++++++++++++++++++++++++++ storage/hybrid/hybrid.go | 6 ++++++ 2 files changed, 32 insertions(+) create mode 100644 storage/hybrid/PML.txt create mode 100644 storage/hybrid/hybrid.go diff --git a/storage/hybrid/PML.txt b/storage/hybrid/PML.txt new file mode 100644 index 0000000..f8e5c76 --- /dev/null +++ b/storage/hybrid/PML.txt @@ -0,0 +1,26 @@ +This is PML format: + +[OP] +0: create new session +1: destroy session +2: change session ID (sid) +3: modify (create, update key/val) session DATA + +[SID] is session ID + +[DATA] +0: - +1: - +2: new session ID +3: (key)|(val) - create and update DATA (key) only for delete key + + +PML log file: +______________________________________________________ LOG stream... +OP | SID | DATA | | +------------------------------------------------------ | +-- // -- // -- // -- | +------------------------------------------------------ | + ... .... ..... | +OP | SID | DATA | +______________________________________________________ V \ No newline at end of file diff --git a/storage/hybrid/hybrid.go b/storage/hybrid/hybrid.go new file mode 100644 index 0000000..b52b458 --- /dev/null +++ b/storage/hybrid/hybrid.go @@ -0,0 +1,6 @@ +// Package hybrid is session storage that use RAM +// and provider modification log (PML) for very fast efecient +// session operations and filsystem saving using SPML +// save session data into filesystem lazy save. PML is similar to +// WAL in databases +package hybrid