Производительность сайта по сдаче тестирования
Здравствуйте. Делаю сайт по прохождению тестирования. Пользователь заходит на сайт выбирает категорию тестов и начинает прохождение. В каждой категории до ста с лишним вопросов. Как лучше в плане производительности?:
- Выбирать все тесты и ложить их в некое хранилище типа сессий (или какого-нибудь redis) после выбора категории (т.е. перед началом самого тестирования) и затем уже выдавать каждый тест (вопрос) оттуда или же
- в первом варианте нет смысла и можно вытаскивать каждый тест из БД (т.е. каждый вопрос тестирования это запрос к БД)
Уже делал такой сайт до этого, использовал первый вариант, но с сессиями периодически выходят какие-то ошибки, то сессионная переменная не удалится, то еще что. Если все-таки первый вариант является более правильным, то насколько redis подходит для таких нужд или какое бы хранилище посоветовали бы вы?
Спасибо.