Skip to content

charlie1404/vqs

Repository files navigation

VQS (Virtual Queue System)

Intro

Todo!!

File Format (.bin)

File Header 16KB

Data Stored Bytes Comments
Magic Num (0x01535156) 4 VQS (0x56, 0x51, 0x53) Followed By 0x01 (v1)
in little endianness
Capacity left 4 in bytes
Items Count 4
Next Read Offset 4
Next Write Offset 4
Max Message Size 4
Message Retention Period 4
Message Wait in Seconds 2 long poll duration
Delay in Seconds 2
Visibility Timeout 2
Tags rest of page size
TagNameNull Terminated String
TagValueNull Terminated String
  • TODO: Later look how to resize files, or use multiple files
  • TODO: Page size increase benchmark
  • TODO: monitoring capablity for page faults
  • TODO: call msync to guarantee disk persist // unix.Msync()
  • TODO: add config management
  • TODO: add logs and metrics management
  • TODO: Better handling
  • TODO: better code structuring
  • TODO: tests
  • TODO: write better serialization and deserialization logic
  • TODO: use sync.Pool for object allocations

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published