From b2ba998a90eec63e63d8a02494bb93b2b8923d91 Mon Sep 17 00:00:00 2001 From: Alex Schofield Date: Tue, 12 May 2026 23:13:06 +0100 Subject: update README with problem description --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'README.md') 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. -- cgit v1.2.3