В случае реального времени (10 000 пользователей параллельно обращаются к этой странице карты времени) tomcat + mysql может обрабатывать 10 000 параллельных запросов (я имею в виду выборку 30 записей за удар)?
Нет, производительность зависит от уровня кэширования, если каждый пользователь имеет доступ к своей карте
каждый раз (абсолютно случайно) и у вас есть 50 ГБ БД, поэтому вы будете ограничены диском, и нет, вы не сможете ни в коем случае извлекать записи 10 КБ в одну секунду из разных мест на диске.
С другой стороны, 99,9% пользователей имеют доступ только к последним записям, поэтому 50/12/3 ~ = 1,5 Г часто
доступ к данным, поэтому они хранятся в кэш-памяти, у вас может быть возможность получать 10K запросов на пользователя на компьютере с большим количеством памяти и процессоров, но я не думаю, что вы можете сделать это в параллельные запросы, потому что MySQL имеет поток на соединение.
В любом случае вам, вероятно, потребуется подготовить разделение БД на несколько серверов, чтобы
у вас есть возможность масштабировать и внедрять эффективное кэширование записей в памяти.
РЕДАКТИРОВАТЬ в любом случае, если вы попытаетесь сохранить только данные ключа / значения без дополнительной индексации, я бы предложил выбрать что-то более простое, чем полная реляционная база данных, взгляните на http://memcachedb.org/, или отдельное архивное хранилище и хранилище, которое можно обновить - потому что хранилище, которое не обновлено, может храниться по-другому.