aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorAlex Schofield <git@ajschof.me>2026-05-12 23:13:06 +0100
committerAlex Schofield <git@ajschof.me>2026-05-12 23:13:06 +0100
commitb2ba998a90eec63e63d8a02494bb93b2b8923d91 (patch)
treefae20baa0f541e7beb4e80c67abd7fd019975bd5 /README.md
parent864c33833259a30d0d578904536305c2942a164b (diff)
downloadinventorysim-b2ba998a90eec63e63d8a02494bb93b2b8923d91.tar.gz
inventorysim-b2ba998a90eec63e63d8a02494bb93b2b8923d91.zip
update README with problem description
Diffstat (limited to 'README.md')
-rw-r--r--README.md18
1 files changed, 17 insertions, 1 deletions
diff --git a/README.md b/README.md
index 0bd1605..3a9879c 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,17 @@
-# InventorySim \ No newline at end of file
+# InventorySim
+
+Simulates an single-warehouse inventory management system that handles these
+edge cases by preventing inventory oversells under load.
+
+## Problem
+
+Inventory management systems are an intriguing area for system designs. They
+must follow strict rules for how inventory is added, removed, and transferred
+between locations in a warehouse. Without careful handling, stock can be
+purchased that doesn't exist.
+
+For instance, a high traffic item can sell out quickly, but how can you prevent
+two users from purchasing the last item at the same time? Race conditions happen
+when multiple requests read and write the same inventory row at the same time.
+Two customers can read only one unit of milk is available, both reserve it, and
+the system oversells.
git.ajschof.me — hosted by ajschofield — powered by cgit