основанный на java диск hashmap

Я работаю над веб-сканером (пожалуйста, не предлагайте существующий, это не вариант). У меня все работает так, как ожидается. Моя единственная проблема заключается в том, что в настоящее время я использую своего рода модель сервер / клиент, где сервер выполняет сканирование и обработку данных, а затем помещает их в центральное место.

Это местоположение - объект, созданный из класса, который я написал. Внутри класс поддерживает хэш-карту, определенную какHashMap<String, HashMap<String, String>>

Я храню данные на карте, делая URL-адрес ключом (я сохраняю их уникальность), а значение hasmap хранит соответствующие поля данных для этого URL-адреса, такие как заголовок, значение и т. Д.

Я иногда сериализую используемые внутренние объекты, но паук многопоточный, и как только я скажу, что 5 потоков, просматривающих требования к памяти, растут в геометрической прогрессии.

До сих пор производительность была отличной с хэш-картой, сканируя 15K URL за 2.r минуты с около 30 секундами процессорного времени, поэтому мне действительно не нужно указывать в направлении существующего паука, как предлагали большинство пользователей форума.

Кто-нибудь может предложить быстрое решение на основе диска, которое, вероятно, будет поддерживать одновременное чтение и запись? Структура данных не должна быть одинаковой, просто должна быть возможность хранить связанные значения метатегов вместе и т. Д.

заранее спасибо

Ответы на вопрос(5)

Ваш ответ на вопрос