Вместо этого вы можете использовать ConcurrentHashMap, и он имеет больше преимуществ по сравнению с обычной картой.Я не уверен, используете ли вы Java5, поскольку он доступен только с версии 5.
Также я бы сказал, подумайте еще раз над своей логикой, действительно ли вам требуется синхронизация при операциях чтения.Если это не так, вы можете удалить это и сэкономить некоторую производительность.
Если вы действительно чувствуете проблему с нехваткой памяти, вы можете запустить jvm с большим количеством параметров памяти vm, упомянутых выше.Попробуйте.:)
Эффективный метод хеширования ключей.Вы можете зависеть от других API, таких как Pojomatic , чтобы сделать это.