Я создаю приложение Java REST, в котором я использую HashMap для хранения некоторых данных.
Поскольку у него есть сервер, он может обрабатывать несколько запросов одновременно, которые обращаются к HashMap.Все выполненные запросы проверяют, имеет ли карта предопределенное значение (это значение зависит от тела запроса), и если нет, добавьте это значение на карту и верните его.Если карта уже имеет это значение, она просто возвращает значение на карте.
Что я должен принять во внимание, чтобы иметь работающую и надежную систему?У меня будет много операций чтения на карте и некоторых записей (в основном, когда приложение будет запущено, поскольку карта будет пустой).
tl; dr
- JavaСервер, который будет обрабатывать множественные и одновременные запросы.
- Каждый запрос будет делать по крайней мере
Map.containsKey(someKey)
и, в конечном итоге, Map.get(someKey)
- Некоторые запросы будут делать
Map.put(someKey, someValue)
Должен ли я использовать некую параллельную структуру данных?
Ради аргумента я знаю, что использование решения в памяти ненадежно.Это не предназначено для производственного использования, это просто академическое.