Я понимаю, что вы хотите создать страницу с возможностью поиска, и чтобы правильно ответить на ваш вопрос, было бы хорошо понять, что вы ищете для поиска?
Вы ищете среди объектов, хранящихся в памяти, или вы ищете среди строк в базе данных, или вы ищете файловую систему?
Тот факт, что вы упомянули JBossSearchableCache , заставляет меня поверить, что вы можете искать среди объектов в памяти.
В этом случае вы можете хранить только столько памяти, сколько выделено вашей JVM. Например: если вашей JVM выделено 1 ГБ, у вас будет приблизительно 1 ГБ минус потребности вашей среды выполнения. Если вам нужно больше памяти, вам следует рассмотреть Data Grid, например, Infinispan , где вы можете хранить все данные в памяти в высокодоступной сетке, а также предоставить вам возможности MapReduce. Вы также можете использовать Hibernate OGM для написания запросов типа SQL, охватывающих всю сетку.
Надеюсь, это поможет.
Удачи!