Try to implement same that did https://www.youtube.com/@SovietReliable
Easy to use distributed event bus similar to Kafka
- Easy to configure our of the box to not lose data.
- Distributed, with asynchronous replication by default.
- Explicit acknowlwdgement of data thet was read.
- Sata is split into chunks and is stored as files on disk. The files are replicated.
- Readers explicitly acknowlwdge data that was read. Readers are responsible for reading the chunks starting with the appropirate offsets.
- Limit for the maximum message size is 1 MiB, etherwise we can to longer serve results from disk because we read from disk in 1 MiB chunks.
- Write a more fine-grained test for on-disk format.